waitfor延迟适用于批量更新?

时间:2014-09-01 11:27:01

标签: sql sql-server transactions synchronization sql-update

我正在批量编写更新查询数作为事务。例如,

Begin transaction
BEGIN TRY 
update x
.......

update y
......

update x join y
......

update x join z
.......

COMMIT;

END TRY

BEGIN CATCH
ROLLBACK;
END CATCH

x,y和z表有数百万条记录。

我想知道他们是按顺序执行还是必须在每次更新之间添加WAITFOR DELAY? 我是新来的,请帮助我。我如何确保每次更新都应该运行。 编辑: 当我对10亿条记录运行这个批处理文件时,还有一件事情,我已经从 dm_exec_requests 表中看到了它。为什么它显示暂停以及如何克服它。

1 个答案:

答案 0 :(得分:1)

  1. 没有必要放弃' WAITFORDELAY'因为它将按顺序运行。
  2. 同样关于因缺乏资源而暂停的意义上的SUSPENDED。这在执行方面很常见。我建议你喜欢使用较小的交易而不是一次大交易。
  3. 感谢。