WEB开发网
开发学院数据库MSSQL Server MS SQL入门基础:创建索引 阅读

MS SQL入门基础:创建索引

 2007-01-03 09:19:42 来源:WEB开发网   
核心提示: 指定要删除并重新创建簇索引,删除簇索引会导致所有的非簇索引被重建,MS SQL入门基础:创建索引(3),因为需要用行指针来替换簇索引键,如果再重建簇索引,这在SQL Server2000以前的版本中是不允许的,算得上是一大改进,那么非簇索引又会再重建一次,以便用簇索引键来替换行指针

指定要删除并重新创建簇索引。删除簇索引会导致所有的非簇索引被重建,因为需要用行指针来替换簇索引键。如果再重建簇索引,那么非簇索引又会再重建一次,以便用簇索引键来替换行指针。使用DROP_EXISTING 选项可以使非簇索引只重建一次。 STATISTICS_NORECOMPUTE

指定分布统计不自动更新。需要手动执行不带NORECOMPUTE 子句的UPDATESTATISTICS 命令。 SORT_IN_TEMPDB

指定用于创建索引的分类排序结果将被存储到Tempdb 数据库中。如果Tempdb 数据库和用户数据库位于不同的磁盘设备上,那么使用这一选项可以减少创建索引的时间,但它会增加创建索引所需的磁盘空间。 ON filegroup

指定存放索引的文件组。 注意:数据类型为TEXT、NTEXT、IMAGE或BIT的列不能作为索引的列。

由于索引的宽度不能超过900个字节,因此数据类型为CHAR、VARCHAR、BINARY和VARBINARY的列的列宽 度超过了900字节,或数据类型为NCHAR、NVARCHAR的列的列宽度超过了450个字节时也不能作为索引的列。

在使用索引创建向导创建索引时,不能将计算列包含在索引中,但在直接创建或使用CREATE INDEX命令创建索引时,则可以对计算机列创建索引,这在SQL Server2000以前的版本中是不允许的,算得上是一大改进。

例8-1: 为表products 创建一个簇索引。

create unique clustered index pk_p_id

on products(p_id)

with

pad_index,

fillfactor = 10,

ignore_dup_key,

drop_existing,

statistics_norecompute

on [primary]

例8-2 为表products 创建一个复合索引

create index pk_p_main

on products(p_id, p_name, sumvalue) --其中sumvalue 是一个计算列表达式为price*quantity

上一页  1 2 3 4 5  下一页

Tags:MS SQL 入门

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接