Udostępnij za pomocą


Tworzenie, modyfikowanie i usuwanie selektywnych indeksów XML

Dotyczy:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceBaza danych SQL w usłudze Microsoft Fabric

W tym artykule opisano sposób tworzenia nowego selektywnego indeksu XML lub zmieniania lub porzucania istniejącego selektywnego indeksu XML.

Aby uzyskać więcej informacji na temat selektywnych indeksów XML, zobacz Selektywne indeksy XML (SXI).

Tworzenie selektywnego indeksu XML

Utwórz selektywny indeks XML przy użyciu języka Transact-SQL, wywołując instrukcję CREATE SELECTIVE XML INDEX. Aby uzyskać więcej informacji, zobacz CREATE SELECTIVE XML INDEX (Transact-SQL).

Poniższy przykład przedstawia składnię tworzenia selektywnego indeksu XML. Przedstawiono również kilka odmian składni opisujących ścieżki, które mają być indeksowane, z opcjonalnymi wskazówkami optymalizacji.

CREATE SELECTIVE XML INDEX sxi_index
ON Tbl(xmlcol)

FOR(
    pathab   = '/a/b' as XQUERY 'node()'
    pathabc  = '/a/b/c' as XQUERY 'xs:double',
    pathdtext = '/a/b/d/text()' as XQUERY 'xs:string' MAXLENGTH(200) SINGLETON
    pathabe = '/a/b/e' as SQL NVARCHAR(100)
)

Zmienianie selektywnego indeksu XML

Zmień istniejący selektywny indeks XML przy użyciu języka Transact-SQL, wywołując instrukcję ALTER INDEX. Aby uzyskać więcej informacji, zobacz ALTER INDEX (Selektywne indeksy XML).

W poniższym przykładzie przedstawiono instrukcję języka SQL ALTER INDEX. Ta instrukcja dodaje ścieżkę '/a/b/m' do części XQuery indeksu i usuwa ścieżkę '/a/b/e' ze części SQL indeksu utworzonego w przykładzie w artykule CREATE SELECTIVE XML INDEX (Transact-SQL). Ścieżka do usunięcia jest identyfikowana przez nazwę nadaną jej w momencie tworzenia.

ALTER INDEX sxi_index
ON Tbl
FOR
(
    ADD pathm = '/a/b/m' as XQUERY 'node()' ,
    REMOVE pathabe
)

Usuwanie selektywnego indeksu XML

Usuń selektywny indeks XML przy użyciu języka Transact-SQL, wywołując instrukcję DROP INDEX. Aby uzyskać więcej informacji, zobacz DROP INDEX (Selektywne indeksy XML).

W poniższym przykładzie przedstawiono instrukcję DROP INDEX.

DROP INDEX sxi_index ON tbl

Zobacz także