我正在创建一个使用C#从文本文件运行查询的应用。
查询的一行如下:
update table1 set value1 = (select valueA from table2 where valueB = 'someValue')
set ...
where value2 = 'anotherValue'
Set语句每个看起来都与上面的语句完全相同,并且所有语句都在同一个更新语句中。
读取文件的时间太长,程序没有响应。我甚至尝试在SSMS中执行查询 - 它不起作用。
编辑:我有70000多条更新声明。
我需要C#中的解决方案而不是SQL。
我使用的是Visual Studio 2010 Express和SQL Server 2008 Express。
答案 0 :(得分:0)
如果您的索引和查询计划一切正常, 你有没有尝试过一些表提示(用...)来检查这是否来自锁定问题?
update table1 set value1 = (select valueA from table2 with (nolock) where valueB = 'someValue')
set ...
where value2 = 'anotherValue'
请注意,如果您不确定查询所执行的操作,则运行此类表提示可能会在数据库/更新结果中引入一些不一致。