Класс событий Showplan All for Query Compile

Событие класса Showplan All for Query Compile происходит, когда MicrosoftSQL Server компилирует инструкцию SQL. Чтобы определить операторы Showplan для SQL Server 2005 и более поздних версий, включите этот класс событий в трассировку. Включаемые в эти события сведения представляют собой часть данных, доступных в классе событий Showplan XML For Query Compile.

Класс событий Showplan All for Query Compile отображает полные данные этапа компиляции, поэтому трассировки, которые содержат класс событий Showplan All for Query Compile, могут существенно увеличивать производительность. Чтобы свести их к минимуму, сделайте использование этого класса событий доступным только для трассировок, наблюдающих за отдельными проблемами в течение короткого промежутка времени.

Если класс событий Showplan All for Query Compile включен в трассировку, то должен быть выбран столбец данных BinaryData. В противном случае в трассировке не отображаются данные для этого класса событий.

Столбцы данных класса событий Showplan All for Query Compile

Имя столбца данных

Тип данных

Описание

Идентификатор столбца

Фильтруемый

ApplicationName

nvarchar

Имя клиентского приложения, установившего соединение с экземпляром SQL Server. Этот столбец заполняется значениями, передаваемыми приложением, а не отображаемым именем программы.

10

Да

BinaryData

image

Предполагаемая стоимость запроса.

2

Нет

ClientProcessID

int

Идентификатор, присвоенный главным компьютером сервера процессу, в котором работает клиентское приложение. Этот столбец данных заполняется в том случае, если клиент предоставляет идентификатор клиентского процесса.

9

Да

DatabaseID

int

Идентификатор базы данных, указанной в инструкции USE database, или базы данных по умолчанию, если для данного экземпляра инструкция USE database не выполнялась. Приложение SQL Server Profiler отображает имя базы данных, если столбец данных ServerName захвачен при трассировке и сервер доступен. Определите значение для базы данных, используя функцию DB_ID.

3

Да

DatabaseName

nvarchar

Имя базы данных, в которой выполняется инструкция пользователя.

35

Да

EventClass

int

Тип события = 169.

27

Нет

EventSequence

int

Порядковый номер данного события в запросе.

51

Нет

GroupID

int

Идентификатор группы рабочей нагрузки, в которой запускается событие трассировки SQL.

66

Да

HostName

nvarchar

Имя компьютера, на котором выполняется клиентская программа. Заполнение этого столбца данных производится в том случае, если клиент предоставляет имя узла. Чтобы определить имя узла, используйте функцию HOST_NAME.

8

Да

IntegerData

int

Предполагаемое количество возвращаемых строк.

25

Да

IsSystem

int

Указывает, произошло событие в системном или в пользовательском процессе. 1 = системный, 0 = пользовательский.

60

Да

LineNumber

int

Отображает номер строки, содержащей ошибку.

5

Да

LoginName

nvarchar

Имя входа пользователя (либо имя входа безопасности SQL Server, либо учетные данные входа Microsoft Windows в формате «ДОМЕН\имя_пользователя»).

11

Да

LoginSID

image

Идентификатор безопасности вошедшего в систему пользователя. Эти сведения можно найти в представлении каталога sys.server_principals. Значение идентификатора безопасности уникально для каждого имени входа на сервере.

41

Нет

NestLevel

int

Целочисленное значение, представляющее данные, возвращаемые функцией @@NESTLEVEL.

29

Да

NTDomainName

nvarchar

Домен Windows, к которому принадлежит пользователь.

7

Да

NTUserName

nvarchar

Имя пользователя Windows.

6

Да

ObjectID

int

Идентификатор объекта, назначенный системой.

22

Да

ObjectName

nvarchar

Имя объекта, на который указывает ссылка.

34

Да

ObjectType

int

Значение, представляющее тип объекта, связанного с событием. Это значение соответствует столбцу type в таблице sys.objects. Значения см. в разделе Столбец события ObjectType Trace.

28

Да

RequestID

int

Идентификатор запроса, содержащего инструкцию.

49

Да

ServerName

nvarchar

Имя экземпляра SQL Server, для которого выполняется трассировка.

26

Нет

SessionLoginName

nvarchar

Имя входа пользователя, создавшего этот сеанс. Например, при подключении к SQL Server по имени Имя_входа1 и при выполнении инструкции под именем Имя_входа2 SessionLoginName выводится значение Имя_входа1, а в столбце LoginName содержит значение «Имя_входа2». В этом столбце отображаются как имена входа SQL Server, так и имена входа Windows.

64

Да

SPID

int

Идентификатор процесса сервера, который SQL Server присвоил процессу, связанному с клиентом.

12

Да

StartTime

datetime

Время начала события, если оно известно.

14

Да

TransactionID

bigint

Назначенный системой идентификатор транзакции.

4

Да

XactSequence

bigint

Токен, используемый для описания текущей транзакции.

50

Да

См. также

Справочник

Хранимая процедура sp_trace_setevent (Transact-SQL)

Основные понятия

Расширенные события

Справочник по логическим и физическим операторам Showplan