2013-01-03 16 views

答えて

17

上の変化は、ここで実行時間の長いSQL文です:それは実行するために5分程度かかります

WAITFOR DELAY '0:05'; 

。 1つのクエリウィンドウで

+0

ありがとうございます、私はこれがポイントのようにまっすぐですが好きです。 –

0

私が「CTE」と書いていたのと同じように、私は考えました。クイック検索以降と http://smehrozalam.wordpress.com/2009/06/09/t-sql-using-common-table-expressions-cte-to-generate-sequences/

--define start and end limits 
Declare @start bigint, @end bigint 
Select @start=1, @end=99999 

;With NumberSequence(Number) as 
(
    Select @start as Number 
     union all 
    Select Number + 1 
     from NumberSequence 
     where Number < @end 
) 

--select result 
Select * From NumberSequence Option (MaxRecursion 0) 
5

、以下を実行する:

BEGIN TRANSACTION 

SELECT * from TableY with (XLOCK) 

そして、別のウィンドウで、TableYにアクセスしようとする任意の(*)クエリを実行します。そして、最初のウィンドウを閉じたり、ROLLBACKまたはCOMMITを実行するまで、好きなだけ実行します。

(*)TableYへの参照にNOLOCKヒントを追加しないものとします。

+0

ありがとう、私はテーブルロックを見るためのこの1つが好きです。 –

+0

[これは動作することが保証されていません](http://sqlblog.com/blogs/paul_white/archive/2010/11/01/read-committed-shared-locks-and-rollbacks.aspx) –

関連する問題