sys.dm_exec_xml_handles (Transact-SQL)

sp_xml_preparedocument で開かれたアクティブ ハンドルに関する情報を返します。

構文

dm_exec_xml_handles (session_id | 0 )

引数

  • session_id | 0,
    セッションの ID を指定します。session_id を指定した場合、この関数では指定したセッションの XML ハンドルに関する情報が返されます。

    0 を指定した場合、この関数ではすべてのセッションのすべての XML ハンドルに関する情報が返されます。

返されるテーブル

列名

データ型

説明

session_id

int

この XML ドキュメント ハンドルを保持しているセッションのセッション ID。

document_id

int

sp_xml_preparedocument から返される XML ドキュメント ハンドル ID。

namespace_document_id

int

sp_xml_preparedocument に 3 つ目のパラメータとして渡されている、関連付けられた名前空間ドキュメントに使用される内部ハンドル ID。名前空間ドキュメントがない場合は NULL になります。

sql_handle

varbinary(64)

ハンドルが定義されている SQL コードのテキストへのハンドル。

statement_start_offset

int

現在実行中のバッチまたはストアド プロシージャに含まれる、sp_xml_preparedocument の呼び出しが行われるまでの文字数。sql_handlestatement_end_offsetsys.dm_exec_sql_text 動的管理関数と共に使用して、要求に対して現在実行中のステートメントを取得できます。

statement_end_offset

int

現在実行中のバッチまたはストアド プロシージャに含まれる、sp_xml_preparedocument の呼び出しが行われるまでの文字数。sql_handlestatement_start_offsetsys.dm_exec_sql_text 動的管理関数と共に使用して、要求に対して現在実行中のステートメントを取得できます。

creation_time

datetime

sp_xml_preparedocument が呼び出されたときのタイムスタンプ。

original_document_size_bytes

bigint

未解析の XML ドキュメントのサイズ (バイト単位)。

original_namespace_document_size_bytes

bigint

未解析の XML 名前空間ドキュメントのサイズ (バイト単位)。名前空間ドキュメントがない場合は NULL になります。

num_openxml_calls

bigint

このドキュメント ハンドルを使用する OPENXML 呼び出しの数。

row_count

bigint

このドキュメント ハンドルに対する前のすべての OPENXML 呼び出しによって返される行数。

dormant_duration_ms

bigint

最後に OPENXML が呼び出されてから経過した時間 (ミリ秒)。OPENXML が呼び出されていない場合は、sp_xml_preparedocumen が呼び出されてから経過した時間 (ミリ秒) が返されます。

説明

sp_xml_preparedocument への呼び出しを実行した SQL テキストの取得に使用される sql_handles の有効期間は、クエリの実行に使用されるキャッシュ済みのプランよりも長くなります。クエリ テキストがキャッシュ内で使用できない場合は、関数の結果に示された情報を使用してデータを取得することはできません。この状況は、大きなバッチを多数実行している場合に発生する可能性があります。

権限

呼び出し元が所有していないすべてのセッションまたはセッション ID を参照するには、サーバーに対する VIEW SERVER STATE 権限が必要です。呼び出し元は常に自分の現在のセッション ID のデータを参照できます。

次の例では、アクティブ ハンドルをすべて選択します。

select * from sys.dm_exec_xml_handles(0)