索引元素 (DTA)

包含为用户指定的配置创建或删除的索引的信息。

语法

<Recommendation>
  <Create>
    <Index [Clustered | Unique | Online | IndexSizeInMB | NumberOfRows             | QUOTED_IDENTIFIER | ARITHABORT | CONCAT_NULL_YIELDS_NULL             | ANSI_NULLS | ANSI_PADDING | ANSI_WARNINGS
            | NUMERIC_ROUNDABORT]
     ...code removed here...
    </Index>

元素属性

索引属性

数据类型

说明

Clustered

boolean

可选。指定一个聚集索引。设置为“true”或“false”,例如:

<Index Clustered="true">

默认情况下,此属性设置为“false”。

Unique

boolean

可选。指定唯一索引。设置为“true”或“false”,例如:

<Index Unique="true">

默认情况下,此属性设置为“false”。

Online

boolean

可选。指定可在服务器联机时执行操作的索引,执行这些操作需要临时磁盘空间。设置为“true”或“false”,例如:

<Index Online="true">

默认情况下,此属性设置为“false”。

有关详细信息,请参阅 联机执行索引操作

IndexSizeInMB

double

可选。以兆字节为单位指定索引的最大大小,例如:

<Index IndexSizeInMB="873.75">

无默认设置。

NumberOfRows

integer

可选。模拟不同的索引大小,这可有效地模拟不同的表大小,例如:

<Index NumberOfRows="3000">

无默认设置。

QUOTED_IDENTIFIER

boolean

可选。使 Microsoft SQL Server 遵从关于引号分隔标识符和文字字符串的 ISO 规则。如果是对计算列或视图建立的索引,则必须打开此属性。例如,下面的语法可以打开此属性:

<Index QUOTED_IDENTIFIER [...]>

默认情况下,关闭此属性。

有关详细信息,请参阅 SET QUOTED_IDENTIFIER (Transact-SQL)

ARITHABORT

boolean

可选。在查询执行过程中发生溢出或被零除错误时终止查询。如果是对计算列或视图建立的索引,则必须打开此属性。例如,下面的语法可以打开此属性:

<Index ARITHABORT [...]>

默认情况下,关闭此属性。

有关详细信息,请参阅 SET ARITHABORT (Transact-SQL)

CONCAT_NULL_YIELDS_

NULL

boolean

可选。控制是将串联结果视为空值还是空字符串值。如果是对计算列或视图建立的索引,则必须打开此属性。例如,下面的语法可以打开此属性:

<Index CONCAT_NULL_YIELDS_NULL [...]>

默认情况下,关闭此属性。

有关详细信息,请参阅 SET CONCAT_NULL_YIELDS_NULL (Transact-SQL)

ANSI_NULLS

boolean

可选。指定在与空值一起使用等于 (=) 和不等于 (<>) 比较运算符时,这些运算符遵从 ISO 标准的行为。如果是对计算列或视图建立的索引,则必须打开此属性。例如,下面的语法可以打开此属性:

<Index ANSI_NULLS [...]>

默认情况下,关闭此属性。

有关详细信息,请参阅 SET ANSI_NULLS (Transact-SQL)

ANSI_PADDING

boolean

可选。控制列对于长度比其定义大小短的值的存储方式。如果是对计算列或视图建立的索引,则必须打开此属性。例如,下面的语法可以打开此属性:

<Index ANSI_PADDING [...]>

默认情况下,关闭此属性。

有关详细信息,请参阅 SET ANSI_PADDING (Transact-SQL)

ANSI_WARNINGS

boolean

可选。对几种错误条件指定 ISO 标准行为。如果是对计算列或视图建立的索引,则必须打开此属性。例如,下面的语法可以打开此属性:

<Index ANSI_WARNING [...]>

默认情况下,关闭此属性。

有关详细信息,请参阅 SET ANSI_WARNINGS (Transact-SQL)

NUMERIC_ROUNDABORT

boolean

可选。指定当表达式中的舍入导致精度损失时生成的错误报告级别。如果索引位于计算列或视图上,则必须禁用此属性。

以下语法将启用此属性:

<Index ANSI_WARNING [...]>

默认情况下,关闭此属性。

有关详细信息,请参阅 SET NUMERIC_ROUNDABORT (Transact-SQL)

有关在处理计算列或索引视图上的索引时必须设置的属性的详细信息,请参阅影响结果的 SET 选项

元素特征

特征

说明

数据类型和长度

无。

默认值

无。

出现次数

如果未使用 Statistics 或 Heap 元素指定其他物理设计结构,则每个 Create 或 Drop 元素均需出现一次。

元素关系

关系

元素

父元素

创建元素 (DTA)

Drop 元素。有关详细信息,请参阅数据库引擎优化顾问 XML 架构。

子元素

索引的名称元素 (DTA)

索引的列元素 (DTA)

PartitionScheme 元素。有关详细信息,请参阅数据库引擎优化顾问 XML 架构。

PartitionColumn 元素。有关详细信息,请参阅数据库引擎优化顾问 XML 架构。

索引的文件组元素 (DTA)

NumberOfReferences 元素。有关详细信息,请参阅数据库引擎优化顾问 XML 架构。

PercentUsage 元素。有关详细信息,请参阅数据库引擎优化顾问 XML 架构。

示例

有关使用该元素的示例,请参阅使用用户指定配置 (DTA) 的 XML 输入文件示例