正如他们在广播中所说的那样 - 长时间的听众第一次来电......
这是我的问题。VS 2005 SQL Server 2005 数据库。Windows 窗体应用程序。C#。大表 - 780K 记录。我将其称为源表。需要循环遍历源表,并为每条记录对另一个表做一些事情,然后写回源表它已完成。我还没有更新第二张表...
我使用数据读取器使用连接对象 A 循环遍历源表的所有记录。对于每条记录,我构建一个更新语句来更新源表以指示该记录已被处理 - 并针对连接对象 B 使用 SQL 命令来执行此操作乌达泰。如此不同的连接对象,因为我知道 dataReader 想要独占。
这就是问题所在。在处理 X 记录后 - X 似乎约为 60 - 更新超时。
在写这篇文章时——这很有趣,不是吗——我的大脑告诉我这与事务隔离和/或锁定有关……即我正在使用数据读取器读取源记录,但更改了这些记录……我可以看到这会导致不同事务隔离的问题,所以我会调查一下......
任何人都看过这个并且知道如何解决它?
干杯
皮特