Поделиться через


sys.dm_exec_xml_handles (Transact-SQL)

Область применения: SQL Server Управляемый экземпляр SQL Azure

Возвращает сведения о активных дескрипторах, открытых sp_xml_preparedocument.

Синтаксис

  
dm_exec_xml_handles (session_id | 0 )  

Аргументы

session_id | 0,
Идентификатор сеанса. Если указан session_id , эта функция возвращает сведения о xml-дескрипторах в указанном сеансе.

Если указано значение 0, функция возвращает сведения обо всех дескрипторах XML во всех сеансах.

Возвращаемая таблица

Имя столбца Тип данных Description
session_id int Идентификатор сеанса, содержащего данный XML-документ.
document_id int Идентификатор дескриптора XML-документа, возвращаемый sp_xml_preparedocument.
namespace_document_id int Внутренний идентификатор дескриптора, используемый для связанного документа пространства имен, переданного в качестве третьего параметра в sp_xml_preparedocument. NULL, если документ пространства имен отсутствует.
sql_handle varbinary(64) Дескриптор текста кода SQL, в котором был определен дескриптор.
statement_start_offset int Количество символов в выполняемом пакете или хранимой процедуре, при которой происходит вызов sp_xml_preparedocument . Можно использовать вместе с sql_handle, statement_end_offset и функцией динамического управления sys.dm_exec_sql_text для получения инструкции текущего выполнения запроса.
statement_end_offset int Количество символов в выполняемом пакете или хранимой процедуре, при которой происходит вызов sp_xml_preparedocument . Можно использовать вместе с sql_handle, statement_start_offset и функцией динамического управления sys.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 на сервер, чтобы просмотреть все сеансы или идентификаторы сеансов, которыми не владеет участник. Участник всегда может просмотреть данные для своего текущего идентификатора сеанса.

Разрешения для 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)