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


Класс событий Plan Guide Unsuccessful

Класс событий Plan Guide Unsuccessful указывает, что SQL Server не удалось создать план выполнения для запроса или пакета, в котором содержится структура плана. Вместо этого план был скомпилирован без использования структуры плана. Событие возникает, когда выполняются следующие условия.

  • Уже выполняется пакет, совпадающий с пакетом или модулем в определении структуры плана.

  • Уже выполняется запрос, совпадающий с запросом в определении структуры плана.

  • Не удалось успешно применить к запросу или пакету указания в определении структуры плана, включая указание USE PLAN. Таким образом, скомпилированному плану запроса не удалось принять заданные указания, и план был скомпилирован без использования структуры плана.

Возможно, срабатывание события вызвано недопустимой структурой плана. Проверьте структуру плана, которая используется запросом или пакетом, с помощью функции sys.fn_validate_plan_guide и исправьте ошибку, о которой сообщит эта функция.

Это событие включено в шаблон Tuning Приложение SQL Server Profiler.

Столбцы данных класса событий Plan Guide Unsuccessful

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

Тип данных

Описание

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

Фильтруемый

ApplicationName

nvarchar

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

10

Да

ClientProcessID

int

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

9

Да

DatabaseID

int

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

3

Да

DatabaseName

nvarchar

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

35

Да

EventClass

int

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

27

Нет

EventSequence

int

Последовательность указанного события в запросе.

51

Нет

HostName

nvarchar

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

8

Да

IsSystem

int

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

60

Да

LoginName

nvarchar

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

11

Да

LoginSid

image

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

41

Да

NTDomainName

nvarchar

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

7

Да

NTUserName

nvarchar

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

6

Да

ObjectID

int

Идентификатор объекта модуля, скомпилированного при применении структуры плана. Если руководство плана не была применена к модулю, в этом столбце будет значение NULL.

22

Да

RequestID

int

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

49

Да

ServerName

nvarchar

Имя трассируемого экземпляра SQL Server.

26

Нет

SessionLoginName

nvarchar

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

64

Да

SPID

int

Идентификатор сеанса, в котором произошло событие.

12

Да

StartTime

datetime

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

14

Да

TextData

ntext

Имя структуры плана.

1

Да

TransactionID

bigint

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

4

Да

XactSequence

bigint

Токен, который описывает текущую транзакцию.

50

Да

См. также

Справочник

Класс событий Plan Guide Successful

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

sys.fn_validate_plan_guide (Transact-SQL)

sp_create_plan_guide (Transact-SQL)

sp_create_plan_guide_from_handle (Transact-SQL)

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

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