创建、更改和删除选择性 XML 索引

适用于:SQL ServerAzure SQL 数据库Azure SQL 托管实例Microsoft Fabric 中的 SQL 数据库

本文说明了如何创建新的选择性 XML 索引,或者更改或删除现有的选择性 XML 索引。

有关选择性 XML 索引的更多信息,请参阅 选择性 XML 索引 (SXI)

创建选择性 XML 索引

通过调用CREATE SELECTIVE XML INDEX语句,使用 Transact-SQL 创建选择性 XML 索引。 有关详细信息,请参阅CREATE SELECTIVE XML INDEX(Transact-SQL)。

下面的示例显示了创建选择性 XML 索引的语法。 它还展示了几种用于描述要建立索引的路径的语法变体,并可包含可选的优化提示。

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

更改选择性 XML 索引

通过调用ALTER INDEX语句,使用Transact-SQL更改现有的选择性 XML 索引。 有关详细信息,请参阅ALTER INDEX(选择性 XML 索引)。

下面的示例演示了一个 ALTER INDEX 语句。 此语句将路径'/a/b/m'添加到索引的 XQuery 部分,并从文章CREATE SELECTIVE XML INDEX中创建的索引的 SQL 部分中删除路径。 要删除的路径通过创建时为其指定的名称来标识。

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

删除选择性 XML 索引

使用 Transact-SQL 通过调用 DROP INDEX 语句删除选择性 XML 索引。 有关详细信息,请参阅DROP INDEX(选择性 XML 索引)。

下面的示例演示了一个 DROP INDEX 语句。

DROP INDEX sxi_index ON tbl

另请参阅