CREATE XML INDEX (селективные XML-индексы)
Область применения: SQL Server База данных SQL Azure Управляемый экземпляр SQL Azure
Создает новый вторичный селективный XML-индекс по одному пути, который уже проиндексирован существующим селективным XML-индексом. Кроме того, вы можете создавать первичные селективные XML-индексы. Дополнительные сведения см. в разделе Создание, изменение и удаление селективных XML-индексов.
Соглашения о синтаксисе Transact-SQL
Синтаксис
CREATE XML INDEX index_name
ON <table_object> ( xml_column_name )
USING XML INDEX sxi_index_name
FOR ( <xquery_or_sql_values_path> )
[WITH ( <index_options> )]
<table_object> ::=
{ database_name.schema_name.table_name | schema_name.table_name | table_name }
<xquery_or_sql_values_path>::=
<path_name>
<path_name> ::=
character string literal
<xmlnamespace_list> ::=
<xmlnamespace_item> [, <xmlnamespace_list>]
<xmlnamespace_item> ::=
xmlnamespace_uri AS xmlnamespace_prefix
<index_options> ::=
(
| PAD_INDEX = { ON | OFF }
| FILLFACTOR = fillfactor
| SORT_IN_TEMPDB = { ON | OFF }
| IGNORE_DUP_KEY = OFF
| DROP_EXISTING = { ON | OFF }
| ONLINE = OFF
| ALLOW_ROW_LOCKS = { ON | OFF }
| ALLOW_PAGE_LOCKS = { ON | OFF }
| MAXDOP = max_degree_of_parallelism
)
Аргументы
index_name
Имя создаваемого нового индекса. Имена индексов должны быть уникальными в пределах таблицы, но не обязательно должны быть уникальными в пределах базы данных. Имена индексов должны удовлетворять правилам для идентификаторов.
ON <table_object> Таблица, которая содержит индексируемый XML-столбец. Вы можете использовать следующие форматы.
database_name.schema_name.table_name
database_name..table_name
schema_name.table_name
xml_column_name
Имя таблицы, которая содержит XML-столбец, содержащий индексируемый путь.
USING XML INDEX sxi_index_name
Имя существующего селективного XML-индекса.
FOR (<xquery_or_sql_values_path>) Имя индексируемого пути, по которому создается вторичный селективный XML-индекс. Путь для индексирования является присвоенным именем из инструкции CREATE SELECTIVE XML INDEX. Дополнительные сведения см. в разделе CREATE SELECTIVE XML INDEX (Transact-SQL).
WITH <index_options> Сведения о параметрах индекса см. в статье CREATE XML INDEX.
Замечания
Может быть несколько вторичных селективных XML-индексов в каждом XML-столбце базовой таблицы.
Ограничения
Для создания селективных XML-индексов для столбца необходимо, чтобы селективный XML-индекс для XML-столбца был уже создан.
Безопасность
Разрешения
Необходимо разрешение ALTER для таблицы или представления. Пользователь должен быть членом предопределенной роли сервера sysadmin или предопределенных ролей базы данных db_ddladmin и db_owner.
Примеры
В следующем примере создается вторичный селективный XML-индекс с путем pathabc
. Путь для индексирования является присвоенным именем из инструкции CREATE SELECTIVE XML INDEX (Transact-SQL).
CREATE XML INDEX filt_sxi_index_c
ON Tbl(xmlcol)
USING XML INDEX sxi_index
FOR ( pathabc );
См. также
Выборочный XML-индекс (SXI)
Создание, изменение и удаление вторичных селективных XML-индексов