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


Класс события SQL:StmtRecompile

Класс событий SQL:StmtRecompile указывает на рекомпиляции уровня инструкций, вызванные всеми типами пакетов: хранимыми процедурами, триггерами, нерегламентированными пакетами и запросами. Запросы можно отправлять с помощью sp_executesql, динамических методов SQL, подготовки методов, методов выполнения или аналогичных интерфейсов. Класс событий SQL:StmtRecompile должен использоваться вместо класса событий SP:Recompile.

Колонки данных класса события SQL:StmtRecompile

Имя столбца данных Тип данных Описание Идентификатор столбца Доступно для фильтрации
ИмяПриложения nvarchar Имя клиентского приложения, создавшего подключение к экземпляру Microsoft SQL Server. Этот столбец заполняется значениями, передаваемыми приложением, а не отображаемым именем программы. 10 Да
ClientProcessID int Идентификатор, присвоенный главным компьютером сервера процессу, в котором работает клиентское приложение. Этот столбец данных заполняется, если клиент предоставляет идентификатор процесса. 9 Да
Идентификатор базы данных int Идентификатор базы данных, в которой выполняется хранимая процедура. Определите значение для базы данных, используя функцию DB_ID. 3 Да
ИмяБазыДанных nvarchar Имя базы данных, в которой выполняется хранимая процедура. 35 Да
Последовательность событий int Последовательность события в запросе. 51 нет
EventSubClass int Описывает причину перекомпиляции:

1 = изменена схема

2 = изменена статистика

3 = отложенная компиляция

4 = изменен параметр набора

5 = измененная временная таблица

6 = изменен удаленный набор строк

7 = разрешения на просмотр изменены

8 = изменена среда уведомлений запроса

9 = изменено представление раздела

10 = изменены параметры курсора

11 = Опция (перекомпиляция) запрошена
двадцать один Да
Идентификатор группы int Идентификатор группы рабочей нагрузки, в которой запускается событие трассировки SQL. 66 Да
Имя хоста nvarchar Имя компьютера, на котором выполняется клиент, который отправил эту инструкцию. Этот столбец данных заполняется, если клиент предоставляет имя узла. Чтобы определить имя узла, используйте функцию HOST_NAME. 8 Да
ЦелочисленныеДанные2 int Завершение смещения инструкции в хранимой процедуре или пакете, вызвавшей перекомпиляцию. Конечное смещение — это -1, если инструкция является последней в своем пакете. 55 Да
IsSystem int Указывает, произошло событие в системном или в пользовательском процессе.

1 = система

0 = пользователь
шестьдесят Да
Номер строки int Порядковый номер этого заявления в наборе, если применимо. 5 Да
Имя пользователя для входа nvarchar Имя входа, отправившего этот пакет. 11 Да
ЛогинСид image Идентификатор безопасности (SID) текущего пользователя, вошедшего в систему. Эти сведения можно найти в представлении каталога sys.server_principals. Значение идентификатора безопасности уникально для каждого имени входа на сервере. 41 Да
NestLevel int Уровень вложенности вызова хранимой процедуры. Например, хранимая процедура my_proc_a вызывает my_proc_b. В этом случае my_proc_a имеет NestLevel 1, my_proc_b имеет NestLevel 2. 29 Да
Имя домена NT nvarchar Домен Windows, к которому принадлежит пользователь. 7 Да
NTИмяПользователя nvarchar Имя пользователя Windows подключенного пользователя. 6 Да
ИдентификаторОбъекта int Назначаемый системой идентификатор объекта, который содержит инструкцию, которая вызвала перекомпиляцию. Этот объект может быть хранимой процедурой, триггером или определяемой пользователем функцией. Для нерегламентированных пакетов или подготовленных SQL, ObjectID и ObjectName возвращают значение NULL. двадцать два Да
Имя объекта nvarchar Имя объекта, определяемого ObjectID. 34 Да
Тип объекта int Значение, представляющее тип объекта, участвующий в событии. Дополнительные сведения см. в статье ObjectType Trace Event Column. 28 Да
Смещение int Начальное смещение инструкции в рамках хранимой процедуры или пакета, вызвавшего перекомпиляцию. 61 Да
RequestID int Идентификатор запроса, содержащего инструкцию. 49 Да
Имя сервера nvarchar Имя SQL Server, который отслеживается. 26 нет
SessionLoginName nvarchar Имя входа пользователя, создавшего этот сеанс. Например, если вы подключаетесь к SQL Server с помощью Login1 и выполняете инструкцию login2, SessionLoginName показывает Login1 и LoginName показывает Login2. В этом столбце отображаются имена входа SQL Server и Windows. 64 Да
СПИД int Идентификатор процесса сервера для данного подключения. 12 Да
SqlHandle varbinary 64-разрядный хэш на основе текста нерегламентированного запроса или базы данных и идентификатора объекта объекта SQL. Это значение можно передать в sys.dm_exec_sql_text для получения связанного текста SQL. 63 нет
Время начала datetime Время начала события, если оно известно. 14 Да
Текстовые данные ntext Текст инструкции Transact-SQL, которая перекомпилирована. 1 Да
TransactionID bigint Назначенный системой идентификатор транзакции. 4 Да
ИксактСеквенс bigint Токен, который описывает текущую транзакцию. 50 Да

См. также

Класс событий SP:Recompile
sp_trace_setevent (Transact-SQL)