Заметка
Доступ к этой странице требует авторизации. Вы можете попробовать войти в систему или изменить каталог.
Доступ к этой странице требует авторизации. Вы можете попробовать сменить директорию.
Относится к:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Система аналитической платформы (PDW)
SQL база данных в Microsoft Fabric
Возвращает значение свойства именованного индекса или статистики для указанного идентификационного номера таблицы, имени индекса или статистики, а также имени свойства. Возвращается NULL для XML-индексов.
Соглашения о синтаксисе Transact-SQL
Синтаксис
INDEXPROPERTY ( object_ID , index_or_statistics_name , property )
Аргументы
object_ID
Выражение, содержащее идентификационный номер объекта таблицы или индексированного представления, для которого предоставляются сведения о свойстве индекса. Аргумент object_ID имеет тип int.
index_or_statistics_name
Выражение, содержащее имя индекса или статистики, для которого возвращаются сведения о свойстве. Аргумент index_or_statistics_name имеет тип nvarchar(128).
свойство
Выражение, содержащее имя возвращаемого свойства индекса или статистики. Аргумент property имеет тип varchar(128) и может принимать одно из указанных ниже значений.
Примечание.
Если не указано иное, NULL возвращается, если свойство не является допустимым именем свойства, object_ID не является допустимым идентификатором объекта, object_ID является неподдерживаемым типом объекта для указанного свойства, или вызывающий объект не имеет разрешения на просмотр метаданных объекта.
| Свойство | Description | Значение |
|---|---|---|
IndexDepth |
Глубина индекса. | Количество уровней индекса.NULL = недопустимый xml-индекс или входные данные. |
IndexFillFactor |
Значение коэффициента заполнения, использованное при создании индекса или при его последней перестройке. | Коэффициент заполнения |
IndexID |
Идентификатор индекса указанной таблицы или индексированного представления. | Идентификатор индекса. |
IsAutoStatistics |
Статистика была создана параметром AUTO_CREATE_STATISTICSALTER DATABASE. |
1 = Верно0 = false или XML-индекс. |
IsClustered |
Кластеризованный индекс. |
1 = Верно0 = false или XML-индекс. |
IsDisabled |
Индекс отключен. |
1 = Верно0 = ЛожьNULL = недопустимые входные данные. |
IsFulltextKey |
Индекс является ключом для полнотекстового и семантического индексирования таблицы. |
1 = Верно0 = false или XML-индекс.NULL = недопустимые входные данные. |
IsHypothetical |
Индекс является гипотетическим и не может использоваться непосредственно в качестве пути доступа к данным. Гипотетические индексы содержат статистики уровня столбца и управляются и используются помощником по настройке ядра СУБД. |
1 = Верно0 = false или XML-индексNULL = недопустимые входные данные. |
IsPadIndex |
Индекс задает пространство, которое должно оставаться открытым на каждом внутреннем узле. |
1 = Верно0 = false или XML-индекс. |
IsPageLockDisallowed |
Значение блокировки страницы, заданное параметром ALLOW_PAGE_LOCKSALTER INDEX. |
1 = блокировка страницы запрещена.0 = Блокировка страниц разрешена.NULL = недопустимые входные данные. |
IsRowLockDisallowed |
Значение блокировки строк, заданное параметром ALLOW_ROW_LOCKSALTER INDEX. |
1 = блокировка строк запрещена.0 = Допускается блокировка строк.NULL = недопустимые входные данные. |
IsStatistics |
index_or_statistics_name — это статистика, созданная инструкцией CREATE STATISTICS или параметром AUTO_CREATE_STATISTICSALTER DATABASE. |
1 = Верно0 = false или XML-индекс. |
IsUnique |
Индекс является уникальным. |
1 = Верно0 = false или XML-индекс. |
IsColumnstore |
Индекс — это оптимизированный для памяти индекс columnstore. |
1 = Верно0 = Ложьотносится к: SQL Server 2012 (11.x) и более поздним версиям. |
IsOptimizedForSequentialKey |
Индекс оптимизирован для включения операций вставки на последнюю страницу. |
1 = Верно0 = ЛожьОбласть применения: SQL Server 2019 (15.x) и более поздних версий. |
Типы возвращаемых данных
int
Исключения
Возвращает ошибку NULL или если вызывающий объект не имеет разрешения на просмотр объекта.
Пользователь может просматривать только метаданные защищаемых объектов, принадлежащих пользователю или которым предоставлено разрешение. Это означает, что встроенные функции метаданных, такие как INDEXPROPERTY могут возвращать NULL , если у пользователя нет разрешения на объект. Дополнительные сведения см. в разделе "Конфигурация видимости метаданных".
Примеры
Примеры кода в этой статье используют базу данных образца AdventureWorks2025 или AdventureWorksDW2025, которую можно скачать с домашней страницы образцов и проектов сообщества Microsoft SQL Server и.
А. Возвращать свойства для индекса в таблице Employee
Следующий пример возвращает значения для IsClustered, IndexDepthи IndexFillFactor свойства индекса EmployeePK_Employee_BusinessEntityID таблицы в базе данных AdventureWorks2025.
SELECT
INDEXPROPERTY(OBJECT_ID('HumanResources.Employee'), 'PK_Employee_BusinessEntityID', 'IsClustered') AS [Is Clustered],
INDEXPROPERTY(OBJECT_ID('HumanResources.Employee'), 'PK_Employee_BusinessEntityID', 'IndexDepth') AS [Index Depth],
INDEXPROPERTY(OBJECT_ID('HumanResources.Employee'), 'PK_Employee_BusinessEntityID', 'IndexFillFactor') AS [Fill Factor];
Вот результат.
Is Clustered Index Depth Fill Factor
------------ ----------- -----------
1 2 0
Примеры: Azure Synapse Analytics и система платформы аналитики (PDW)
В. Возврат свойств для индекса в таблице FactResellerSales
В приведенном ниже примере проверяются свойства одного из индексов таблицы FactResellerSales.
SELECT
INDEXPROPERTY(OBJECT_ID('dbo.FactResellerSales'), 'ClusteredIndex_6d10fa223e5e4c1fbba087e29e16a7a2','IsClustered') AS [Is Clustered],
INDEXPROPERTY(OBJECT_ID('dbo.FactResellerSales'), 'ClusteredIndex_6d10fa223e5e4c1fbba087e29e16a7a2','IsColumnstore') AS [Is Columnstore Index],
INDEXPROPERTY(OBJECT_ID('dbo.FactResellerSales'), 'ClusteredIndex_6d10fa223e5e4c1fbba087e29e16a7a2','IndexFillFactor') AS [Fill Factor];
GO