Отображение планов выполнения с помощью параметров 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 |
См. также
Основные понятия
Безопасность инструкции Showplan
Инструкция Showplan XML
Инструкции Transact-SQL, создающие инструкции Showplan
Справочник по логическим и физическим операторам