2011-07-29 20 views
1

私は、データベース上のいくつかのアクションが同じトランザクション内で行われているアプリケーションの一部をデバッグしようとしています。各ステップが正しく完了していることを確認するために、データベースで何が起きているのかを見ておくことは有益でしょう。トランザクション中にSQL Serverデータベースを検査する方法は?

トランザクションの実行中にデータベースの内容を確認する方法はありますか?

答えて

2
SELECT * FROM dbo.Table WITH (NOLOCK) 

あなたの探しているものは、ファントムの読み取りに注意してください。

+0

投稿する場合は、テキストエディタでこれらの行を強調表示し、エディタツールバーの "コードサンプル"ボタン( '{}) 'をクリックしてください。それ! –

0

あなたは常に上WITH (NOLOCK)制約を使用することができ、あなたがテーブルのデータで(私に代わって仮定)を見てみたいということを意味場合はSQL文が使用するSQL Serverのプロファイラ

2

を実行されているかを知りたい場合はあなたのトランザクションで変更されたものを得ることは確実ではありません。

0

他の回答で表現WITH (NOLOCK)アイデアの延長...あなたは可能性があり、単純に:

その後、あなたはまだ取引がデバッグされていることにより、コミットされていないデータへの「スヌープ」できるようになる
SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED; 

WITH (NOLOCK)を直接処理することができないストアドプロシージャや関数を呼び出す必要がある場合には非常に便利です。

関連する問題