Установка параметров индекса
Область применения: SQL Server База данных SQL Azure Управляемый экземпляр SQL Azure
В этом разделе описывается изменение свойств индекса в SQL Server с помощью SQL Server Management Studio или Transact-SQL.
В этой статье:
Перед началом:
Изменение свойств индекса различными средствами.
Перед началом
Ограничения
- Следующие параметры немедленно применяются к индексу с помощью предложения SET в инструкции ALTER INDEX: ALLOW_PAGE_LOCKS, ALLOW_ROW_LOCKS, OPTIMIZE_FOR_SEQUENTIAL_KEY, IGNORE_DUP_KEY и STATISTICS_NORECOMPUTE.
- Следующие параметры можно установить при перестройке индекса с помощью инструкции ALTER INDEX REBUILD или CREATE INDEX WITH DROP_EXISTING: PAD_INDEX, FILLFACTOR, SORT_IN_TEMPDB, IGNORE_DUP_KEY, STATISTICS_NORECOMPUTE, ONLINE, ALLOW_ROW_LOCKS, ALLOW_PAGE_LOCKS, MAXDOP и DROP_EXISTING (только CREATE INDEX).
Безопасность
Разрешения
Необходимо разрешение ALTER для таблицы или представления.
Использование среды SQL Server Management Studio
Изменение свойств индекса при помощи конструктора таблиц.
- В обозревателе объектов щелкните значок плюса, чтобы развернуть базу данных, содержащую таблицу, в которой необходимо изменить свойства индекса.
- Чтобы развернуть папку Таблицы , щелкните значок «плюс».
- Щелкните правой кнопкой мыши таблицу, в которой необходимо изменить свойства индекса, а затем выберите пункт Проект.
- В меню Конструктор таблиц выберите пункт Индексы и ключи.
- Выберите индекс, свойства которого необходимо изменить. Его свойства отобразятся в основной сетке.
- Измените значения любого или всех свойств, чтобы внести изменения в индекс.
- Нажмите кнопку Закрыть.
- В меню Файл выберите пункт Сохранитьимя_таблицы.
Изменение свойств индекса при помощи обозревателя объектов.
- В обозревателе объектов щелкните значок плюса, чтобы развернуть базу данных, содержащую таблицу, в которой необходимо изменить свойства индекса.
- Чтобы развернуть папку Таблицы , щелкните значок «плюс».
- Щелкните значок плюса (+), чтобы развернуть таблицу, в которой необходимо изменить свойства индекса.
- Чтобы развернуть папку Индексы , щелкните знак «плюс» (+).
- Щелкните правой кнопкой мыши индекс, свойства которого требуется изменить, и выберите пункт Свойства.
- В разделе Выбор страницыщелкните Параметры.
- Измените значения любого или всех свойств, чтобы внести изменения в индекс.
- Чтобы добавить столбец индекса, удалить или изменить его позицию, выберите страницу Общие в диалоговом окне Свойства индекса ― имя_индекса. Дополнительные сведения см. в разделе Index Properties F1 Help.
Использование Transact-SQL
Просмотр свойств всех индексов в таблице
В следующем примере отображаются свойства всех индексов в таблице базы данных AdventureWorks.
SELECT i.name AS index_name
, i.type_desc
, i.is_unique
, ds.type_desc AS filegroup_or_partition_scheme
, ds.name AS filegroup_or_partition_scheme_name
, i.ignore_dup_key
, i.is_primary_key
, i.is_unique_constraint
, i.fill_factor
, i.is_padded
, i.is_disabled
, i.allow_row_locks
, i.allow_page_locks
, i.has_filter
, i.filter_definition
FROM sys.indexes AS i
INNER JOIN sys.data_spaces AS ds
ON i.data_space_id = ds.data_space_id
WHERE is_hypothetical = 0 AND i.index_id <> 0
AND i.object_id = OBJECT_ID('HumanResources.Employee')
;
Задание свойств индекса
В следующих примерах устанавливаются свойства индексов в базе данных AdventureWorks.
ALTER INDEX AK_SalesOrderHeader_SalesOrderNumber ON
Sales.SalesOrderHeader
SET (
STATISTICS_NORECOMPUTE = ON,
IGNORE_DUP_KEY = ON,
ALLOW_PAGE_LOCKS = ON
)
;
ALTER INDEX ALL ON Production.Product
REBUILD WITH
(
FILLFACTOR = 80
, SORT_IN_TEMPDB = ON
, STATISTICS_NORECOMPUTE = ON
)
;
Дополнительные сведения см. в разделе ALTER INDEX (Transact-SQL).