2013-01-03 32 views

回答

17

的变化下面是一个长期运行的SQL语句:

WAITFOR DELAY '0:05'; 

这将需要大约五分钟来执行。

+0

谢谢,我喜欢这一个它是直截了当的。 –

5

在一个查询窗口中,执行以下:

BEGIN TRANSACTION 

SELECT * from TableY with (XLOCK) 

然后,在另一窗口中执行试图访问TableY任何(*)查询。它会一直运行,直到您关闭第一个窗口或执行其中的ROLLBACKCOMMIT

(*)假设您没有将NOLOCK提示添加到对TableY的引用中。

+0

谢谢,我喜欢这个看表锁。 –

+0

[这不能保证工作](http://sqlblog.com/blogs/paul_white/archive/2010/11/01/read-committed-shared-locks-and-rollbacks.aspx) –