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


SET STATISTICS IO (Transact-SQL)

Позволяет отображать в SQL Server сведения об активности диска, связанной с выполнением инструкций Transact-SQL.

Применимо для следующих объектов: SQL Server (SQL Server 2008 по текущую версию), База данных SQL Windows Azure (С первоначального выпуска по текущий выпуск).

Значок ссылки на раздел Cинтаксические обозначения в Transact-SQL

Синтаксис

SET STATISTICS IO { ON | OFF }

Замечания

Если значение параметра STATISTICS IO равно ON, статистические сведения отображаются. При значении OFF сведения не отображаются.

Когда данный параметр принимает значение ON, будут возвращаться сведения обо всех последующих инструкциях языка Transact-SQL, пока значение параметра не будет установлено в OFF.

В следующей таблице перечислены и описаны элементы вывода.

Элемент вывода

Смысл

Table

Имя таблицы.

Число просмотров

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

  • Число просмотров равно 0, если используется уникальный индекс или кластеризованный индекс первичного ключа и происходит поиск только одного значения. Например, WHERE Primary_Key_Column = <value>.

  • Число просмотров равно 1, если при поиске одного значения используется неуникальный кластеризованный индекс, который определен в ключевом столбце, отличном от первичного. Это позволяет проводить проверку на наличие повторяющихся значений искомого значения ключа. Например, WHERE Clustered_Index_Key_Column = <value>.

  • Число просмотров равно n, где n — количество различных операций поиска или просмотра, начатых по левую или правую сторону от конечного уровня после обнаружения значения ключа с помощью ключа индекса.

логических чтений

Число страниц, считанных из кэша данных.

физические операции чтения

Число страниц, считанных с диска.

упреждающих чтений

Число страниц, помещенных в кэш для запроса.

lob логических чтений

Число страниц типов text, ntext, image или типов больших значений (varchar(max), nvarchar(max), varbinary(max)), считанных из кэша данных.

lob физических чтений

Число страниц типов text, ntext, image или типов больших значений, считанных с диска.

lob упреждающих чтений

Число страниц типов text, ntext, image или типов больших значений, помещенных в кэш для запроса.

Параметр настройки SET STATISTICS IO устанавливается во время запуска или выполнения, но не во время синтаксического анализа.

Примечание

При получении столбцов больших объектов (LOB) инструкциями языка Transact-SQL для некоторых операций получения может потребоваться многократный обход дерева LOB.При этом инструкция SET STATISTICS IO может выдавать значения логических считываний выше ожидаемых.

Разрешения

Для использования инструкции SET STATISTICS IO пользователи должны обладать соответствующими разрешениями на выполнение инструкции Transact-SQL. Разрешение SHOWPLAN не требуется.

Примеры

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

USE AdventureWorks2012;
GO       
SET STATISTICS IO ON;
GO
SELECT * 
FROM Production.ProductCostHistory
WHERE StandardCost < 500.00;
GO
SET STATISTICS IO OFF;
GO

Результирующий набор:

Table 'ProductCostHistory'. Scan count 1, logical reads 5, physical 
reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, 
lob read-ahead reads 0.

См. также

Справочник

Инструкции SET (Transact-SQL)

SET SHOWPLAN_ALL (Transact-SQL)

SET STATISTICS TIME (Transact-SQL)