CREATE XML INDEX (index XML sélectifs)

S’applique à : SQL Server Azure SQL Database Azure SQL Managed Instance

Crée un index XML secondaire sélectif sur un chemin d'accès unique déjà indexé par un index XML sélectif existant. Vous pouvez également créer des index XML primaires sélectifs. Pour plus d’informations, consultez Créer, modifier ou supprimer des index XML sélectifs.

Conventions de la syntaxe Transact-SQL

Syntaxe

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  
)  

Arguments

index_name
Nom de l'index à créer. Les noms d’index doivent être uniques dans une table, mais pas dans une base de données. Les noms d’index doivent se conformer aux règles régissant les identificateurs.

ON <table_object> Table contenant la colonne XML à indexer. Vous pouvez utiliser les formats suivants :

  • database_name.schema_name.table_name

  • database_name..table_name

  • schema_name.table_name

xml_column_name
Nom de la colonne XML qui contient le chemin d'accès à indexer.

USING XML INDEX sxi_index_name
Nom de l'index XML sélectif existant.

FOR (<xquery_or_sql_values_path>) Nom du chemin indexé sur lequel créer l’index XML secondaire sélectif. Le chemin d'accès à indexer est le nom affecté dans l'instruction CREATE SELECTIVE XML INDEX. Pour plus d’informations, consultez CREATE SELECTIVE XML INDEX (Transact-SQL).

WITH <index_options> Pour plus d’informations sur les options d’index, consultez CREATE XML INDEX.

Notes

Il peut y avoir plusieurs index XML secondaires sélectifs sur chaque colonne XML dans la table de base.

Limitations et restrictions

Un index XML sélectif sur une colonne XML doit exister pour pouvoir créer des index XML secondaires sélectifs sur la colonne.

Sécurité

Autorisations

Nécessite une autorisation ALTER sur la table ou la vue. L’utilisateur doit être membre du rôle serveur fixe sysadmin ou des rôles de base de données fixes db_ddladmin et db_owner .

Exemples

L'exemple suivant crée un index XML secondaire sélectif sur le chemin d'accès pathabc. Le chemin à indexer est le nom affecté dans l’instruction CREATE SELECTIVE XML INDEX (Transact-SQL).

CREATE XML INDEX filt_sxi_index_c  
ON Tbl(xmlcol)  
USING XML INDEX sxi_index  
FOR ( pathabc );  

Voir aussi

Index XML sélectifs (SXI)
Créer, modifier ou supprimer des index XML secondaires sélectifs