c# - 为什么相同的软件比以前花费更多的时间?

标签 c# database winforms performance sql-server-2008

<分区>

我不确定这是否是该站点中要问的问题。但我很无奈。

我为我的办公室开发了一个 win 表单应用程序,它将数据从文本文件导入到数据库表中。它现在运行了大约 6 个月。但是最近用户向我提示说,该应用程序花费的时间比以前多得多。例如,即使在一个月前,将大约 100 万条数据导入数据库也需要大约 10 分钟。但最近,同一版本的应用程序需要大约 30 分钟才能导入如此大量的数据。

我猜,这不是软件问题(即使在 30 分钟内,数据已成功导入)。如果是这样,还有什么其他问题会导致此类问题?

我使用 VS2010 C#(目标框架 2.0)和 MS SqlServer 2008 数据库开发了该软件。

最佳答案

你是对的,这不是软件问题。你需要看看

  1. 是否存在网络问题?可能不是,但你需要排除它
  2. 当您开始将大量行导入到一个已经有很多行的表中时,您可能会因为现有索引而遇到问题,因为每次添加行时都必须更新它们。假设您已经在使用批量导入,您需要在导入数据时禁用索引,并在导入后重新启用它。
  3. 不确定您的导入程序究竟做了什么,但您可以在 SSIS 上尝试一下,这是在考虑此类过程的情况下构建的。

关于c# - 为什么相同的软件比以前花费更多的时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17185293/

相关文章:

c# - 如何从数据库中选择一周的日期?

php - 简单的 PDO 暴力查询不起作用

c# - 从表单句柄创建图形的奇怪行为

C# Mono+Winforms MessageBox问题

c# - 如何以编程方式控制从 T4 生成的新文件的构建操作?

C# 控制台应用程序 : reference file without . .\..\文件名

c# - Autofac 作为 AWS Lambda Serverless ASP.NET Core 3.1 Web API 中的 IoC 容器

c# - 如何调试 .NET Windows 服务 OnStart 方法?

PHP成员(member)资格时间和有效期

winforms - 使用 ProgressBar 和 ComboBox