Compartir vía


Crear, modificar y quitar índices XML selectivos

Se aplica a: SQL Server Azure SQL Database Azure SQL Managed Instance

En este artículo se describe cómo crear un nuevo índice XML selectivo, o cómo modificar o quitar un índice XML selectivo existente.

Para obtener más información sobre los índices XML selectivos, vea Índices XML selectivos (SXI).

Crear un índice XML selectivo

Cree un índice XML selectivo mediante Transact-SQL, llamando a la instrucción CREATE SELECTIVE XML INDEX. Para obtener más información, vea CREAR ÍNDICE XML SELECTIVO (Transact-SQL).

En el ejemplo siguiente se muestra la sintaxis para crear un índice XML selectivo. También se muestran varias variaciones de la sintaxis para describir las rutas de acceso que se van a indizar, con sugerencias opcionales de optimización.

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)
)

Modificar un índice XML selectivo

Modifique un índice XML selectivo existente mediante Transact-SQL, llamando a la sentencia ALTER INDEX. Para obtener más información, vea ALTER INDEX (Índices XML selectivos).

En el ejemplo siguiente se muestra una instrucción ALTER INDEX. Esta instrucción agrega la ruta de acceso '/a/b/m' a la parte XQuery del índice y elimina la ruta de acceso '/a/b/e' de la parte SQL del índice creado en el ejemplo del artículo CREATE SELECTIVE XML INDEX (Transact-SQL). La ruta de acceso que se va a eliminar se identifica por el nombre que se especificó cuando se creó.

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

Quitar un índice XML selectivo

Quitar un índice XML selectivo mediante Transact-SQL, llamando a la sentencia DROP INDEX. Para obtener más información, vea DROP INDEX (índices XML selectivos).

En el ejemplo siguiente se muestra una instrucción DROP INDEX.

DROP INDEX sxi_index ON tbl

Consulte también