sys.dm_exec_xml_handles

返回有关 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

用于关联命名空间文档的内部句柄 ID,该命名空间文档已作为第三个参数被传递给 sp_xml_preparedocument。如果没有命名空间文档,则为 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_preparedocument 调用以来经过的毫秒数。

注释

sql_handles 用于检索对 sp_xml_preparedocument 进行调用的 SQL 文本,它的生存期比用于执行查询的缓存计划的生存期长。如果查询文本在缓存中不可用,则无法使用函数结果中提供的信息来检索数据。如果您正在运行多个大型批处理,则可能出现上述情况。

权限

要求对服务器具有 VIEW SERVER STATE 权限,以查看不归调用者所有的全部会话或会话 ID。调用者始终可以查看自己的当前会话 ID 的数据。

示例

以下示例将选择所有活动句柄。

select * from sys.dm_exec_xml_handles(0)