Partager via


CREATE XML INDEX (index XML sélectifs)

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.

Pour plus d'informations, consultez les rubriques suivantes :

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.

Icône Lien de rubrique 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 ] . | schema_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

CREATE (clause)

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

Par exemple : CREATE XML INDEX filt_sxi_index_c

Clause 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.

Par exemple : ON Tbl(xmlcol)

USING XML INDEX (clause)

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

Par exemple : USING XML INDEX sxi_index

FOR (clause)

  • <xquery_or_sql_values_path>
    Nom du chemin d'accès 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.

Par exemple :

FOR
(
    pathabc
)

WITH (clause)

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 d'accès à indexer est le nom affecté dans l'instruction CREATE SELECTIVE XML INDEX.

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

Voir aussi

Concepts

Index XML sélectifs (SXI)

Créer, modifier ou supprimer des index XML secondaires sélectifs