简单的百万行更新超时



尝试这个:

update _PECO_Detail set RunId = 37 

我得到:

从服务器接收结果时发生传输级别错误。(提供程序:TCP提供程序,错误:0-信号量超时

我看到过关于这件事的帖子,说这是一个网络问题,但其他简单的查询也可以。只有这一个。它正在尝试更新120万行(大约(

我不在乎是否需要10个小时(尽管我希望它更快(,但我不希望它超时。

该表已正确编制索引,具有pk,并且RunId字段上也有索引。

它是一个Azure托管实例。它是以一种最低成本的方式建立起来的。我对Azure数据库成本计算不太熟悉。

我已经运行这个程序很长时间了。它还没有坠毁。我认为这就是答案:

Declare @RowsEffected INT = 999;
WHILE (@RowsEffected > 0)   
BEGIN
UPDATE TOP (100000) _PECO_Detail set RunId = 37
WHERE RunId <> 37
SET @RowsEffected = @@ROWCOUNT
END

最新更新