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


sys.dm_exec_xml_handles

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

Синтаксис

dm_exec_xml_handles (session_id | 0 )

Аргументы

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

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

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

Имя столбца

Тип данных

Описание

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_start_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 на сервер, чтобы просмотреть все сеансы или идентификаторы сеансов, которыми не владеет участник. Участник всегда может просмотреть данные для своего текущего идентификатора сеанса.

Примеры

В следующем примере выбираются все активные дескрипторы.

select * from sys.dm_exec_xml_handles(0)