sys.dm_exec_xml_handles (Transact-SQL)

适用于SQL Server Azure 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的关联命名空间文档的内部句柄 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_preparedocument 调用以来的毫秒数。

注解

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

权限

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

SQL Server 2022 及更高版本的权限

要求对服务器具有 VIEW SERVER PERFORMANCE STATE 权限。

示例

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

SELECT * FROM sys.dm_exec_xml_handles(0);  

另请参阅


动态管理视图和函数 (Transact-SQL)
与执行有关的动态管理视图和函数 (Transact-SQL)
sp_xml_preparedocument (Transact-SQL)
sp_xml_removedocument (Transact-SQL)