Отображение планов выполнения с помощью параметров Showplan инструкции SET (Transact-SQL)

Инструкция языка Transact-SQL SET в зависимости от параметров выводит сведения о плане выполнения в виде текста или XML. Эти параметры перечислены и описаны в данном подразделе.

Параметры Showplan инструкции SET

Язык Transact-SQL поддерживает следующие параметры инструкции SET, позволяющие отображать план выполнения запроса:

ПримечаниеПримечание

Параметры SHOWPLAN_XML, SHOWPLAN_ALL и SHOWPLAN_TEXT выдают по одному набору строк для каждого пакета. Параметры STATISTICS XML и STATISTICS PROFILE выдают по одному набору строк для каждого запроса в пакете.

  • SET SHOWPLAN_XML ON

    Эта инструкция подсказывает SQL Server не выполнять инструкции языка Transact-SQL. Вместо этого Microsoft SQL Server для каждой выполняемой инструкции возвращает сведения о плане выполнения в виде XML-документа правильного формата. Дополнительные сведения см. в разделе SET SHOWPLAN_XML (Transact-SQL).

  • SET SHOWPLAN_TEXT ON

    После выполнения этой инструкции SET SQL Server возвращает сведения о плане выполнения для каждого запроса в текстовом виде. Инструкции и пакеты Transact-SQL при этом не выполняются. Дополнительные сведения см. в разделе SET SHOWPLAN_TEXT (Transact-SQL).

  • SET SHOWPLAN_ALL ON

    Эта инструкция похожа на SET SHOWPLAN_TEXT за тем исключением, что имеет более подробный формат вывода, чем у SHOWPLAN_TEXT. Дополнительные сведения см. в разделе SET SHOWPLAN_ALL (Transact-SQL).

  • SET STATISTICS XML ON

    Возвращает сведения о выполнении для каждой инструкции после ее выполнения, в дополнение к стандартному результирующему набору, возвращаемому инструкцией. Возвращается множество XML-документов правильного формата. Инструкция SET STATISTICS XML ON выдает XML-документ для каждой выполненной инструкции. SET SHOWPLAN_XML ON отличается от SET STATISTICS XML ON тем, что второй параметр SET производит выполнение инструкции или пакета Transact-SQL. Вывод STATISTICS XML ON также включает сведения о действительном числе строк, обработанных различными операторами, и действительное число их выполнений. Дополнительные сведения см. в разделе SET STATISTICS XML (Transact-SQL).

  • SET STATISTICS PROFILE ON

    Возвращает сведения о выполнении для каждой инструкции после ее выполнения, в дополнение к стандартному результирующему набору, возвращаемому инструкцией. Оба параметра инструкции SET выводят данные в текстовом виде. SET SHOWPLAN_ALL ON отличается от SET STATISTICS PROFILE ON тем, что второй параметр SET производит выполнение инструкции или пакета Transact-SQL. Вывод STATISTICS PROFILE ON также включает сведения о действительном числе строк, обработанных различными операторами, и действительное число их выполнений. Дополнительные сведения см. в разделе SET STATISTICS PROFILE (Transact-SQL).

  • SET STATISTICS IO ON

    Отображает сведения о дисковой активности, производимой инструкциями на языке Transact-SQL после их выполнения. Этот параметр SET выполняет вывод в виде текста. Дополнительные сведения см. в разделе SET STATISTICS IO (Transact-SQL).

  • SET STATISTICS TIME ON

    Отображает время (в миллисекундах), которое потребовалось для синтаксического анализа, компиляции и выполнения каждой из инструкций языка Transact-SQL. Этот параметр SET выполняет вывод в виде текста. Дополнительные сведения см. в разделе SET STATISTICS TIME (Transact-SQL).

Соглашения использования параметров инструкции SET Showplan

При отображении плана выполнения при помощи параметров SET SHOWPLAN инструкции, отправляемые на сервер, не выполняются. Вместо этого SQL Server анализирует запрос и отображает последовательность операторов, в виде которой была бы выполнена эта инструкция.

ПримечаниеПримечание

Так как при выводе плана инструкция не выполняется, операции языка Transact-SQL фактически не выполняют никаких действий. Поэтому, например, если инструкция CREATE TABLE является частью плана выполнения, то более поздние операции, ссылающиеся на «созданную» таблицу, вернут ошибку, поскольку фактически она не существует. Однако это правило имеет два исключения: при использовании параметров SHOWPLAN SET создаются временные таблицы и выполняются инструкции USE db_name, пытающиеся сменить контекст базы данных на контекст, указанный параметром db_name, при использовании параметров SHOWPLAN SET.

При отображении плана выполнения при помощи параметров SET STATISTICS инструкции языка Transact-SQL, отправленные на сервер, не выполняются.

ПримечаниеПримечание

Параметры SET Showplan не выводят сведения о зашифрованных хранимых процедурах и триггерах.

Параметры Showplan, которые будут отменены в будущих версиях

В будущих версиях SQL Server будут отменены перечисленные ниже параметры Showplan. Пользователям рекомендуется как можно скорее перейти на применение новых режимов. Следующая таблица содержит список параметров SET Showplan, которые устарели и будут отменены, и соответствующие им новые параметры, на которые необходимо перейти.

Устаревший параметр SET

Новый параметр SET

SET SHOWPLAN_TEXT

SET SHOWPLAN_XML

SET SHOWPLAN_ALL

SET SHOWPLAN_XML

SET STATISTICS PROFILE

SET STATISTICS XML