Sdílet prostřednictvím


CREATE XML INDEX (selektivní indexy XML)

platí pro:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceSQL databáze v Microsoft Fabric

Vytvoří nový sekundární selektivní index XML na jedné cestě, která je již indexována existujícím selektivním indexem XML. Můžete také vytvořit primární selektivní indexy XML. Informace najdete v tématu Vytváření, změny a odstraňování selektivních indexů XML.

Transact-SQL konvence syntaxe

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  
)  

Argumenty

index_name
Je název nového indexu, který se má vytvořit. Názvy indexů musí být v tabulce jedinečné, ale nemusí být jedinečné v rámci databáze. Názvy indexů musí dodržovat pravidla identifikátorů .

ON <table_object> Je tabulka, která obsahuje sloupec XML, který se má indexovat. Můžete použít následující formáty:

  • database_name.schema_name.table_name

  • database_name..table_name

  • schema_name.table_name

xml_column_name
Je název sloupce XML, který obsahuje cestu k indexu.

POUŽITÍ SXI_INDEX_NAME INDEX XML
Je název existujícího selektivního indexu XML.

FOR (<xquery_or_sql_values_path>) Je název indexované cesty, na které se má vytvořit sekundární selektivní index XML. Cesta k indexu je přiřazený název příkazu CREATE SELECTIVE XML INDEX. Další informace naleznete v tématu CREATE SELECTIVE XML INDEX (Transact-SQL).

WITH <index_options> Informace o možnostech indexu naleznete v tématu CREATE XML INDEX.

Poznámky

Pro každý sloupec XML v základní tabulce může existovat více sekundárních selektivních indexů XML.

Limitace a omezení

Selektivní index XML ve sloupci XML musí existovat před vytvořením sekundárních selektivních indexů XML ve sloupci.

Zabezpečení

Povolení

Vyžaduje oprávnění ALTER v tabulce nebo zobrazení. Uživatel musí být členem pevné serverové role sysadmin nebo pevné databázové role db_ddladmin a db_owner.

Příklady

Následující příklad vytvoří sekundární selektivní index XML v cestě pathabc. Cesta k indexu je přiřazený název z CREATE SELECTIVE XML INDEX (Transact-SQL).

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

Viz také

selektivní indexy XML (SXI)
Vytváření, změny a odstraňování sekundárních selektivních indexů XML