我在SQL Server 2008 R2在我的数据库这个非常简单的查询:SQL Server 2008中 - UPDATE写不完
UPDATE Table1
SET Field1 = 'This value'
WHERE ID = '12345'
我试图执行这个查询和我从来没有得到成功的结果。首先,它执行很长时间。有一次,我执行这个查询,并在我吃午饭的时候把它留在那里。当我2个小时后回来时,它仍然没有完成。
我需要以编程方式执行此查询。我有一切需要在那里执行它,但现在唯一的问题是,它给了我一个“超时”错误消息。我试图增加我的CommandTimeOut,但这样做会持续更长的时间。 (由于在SQL Server中执行查询确实需要很长时间,请参阅前面的示例)
有人可以请我指出一个很好的解决方案以避免此问题吗?是的,我正在访问的桌面有很多像千人一样的记录。这从来没有成为一个问题,但现在它是。 :(
感谢提前:)
有两个问题:(1)“ID”列中是否存在**索引**?和(2) - 什么样的数据类型是'ID'?如果它是数字数据类型,则不应使用字符串来指定您的ID - 请使用'WHERE ID = 12345'(不带引号)。和PS:*成千上万*的行是**没有** - 如果我们正在谈论几亿 - 那么我们有“很多”...... – 2012-04-17 05:39:36
你想要改变多少行?你看过SQL分析器吗?你运行过类似的查询吗('where id ='23456'')? – hkf 2012-04-17 05:41:19
“很多记录像数千” - 这是很少的行数。换言之,1亿是相当大的。 – 2012-04-17 05:42:54