Sql Server 2005 索引
只有建立在表上的索引。一个表的存储由两部分组成的:一部分用来存放表的数据页面,另一部分存放索引页面。
在表中插入或更新表中数据时,将有额外的操作来维护索
引,那如果没有在表中建立索引的时候,如果向表中插入数据时,只需向数据表插入即可,即维护一张表就
OK
了,那现在建立了索引,当你在向表中插入记录里,系统还向更改索引表的内容,即多维护一张表。
1.一个表只能有一个聚集索引
,
只
能有一个,也可以不建。
2
.创建非聚集索引之前要先创建聚集索引
3
.关键值的唯一性使用
unique
来维护
聚集索引是和表的物理顺序是一致的,所以速度要快,但非聚集索引就不是了,它是和表的物理顺序是无关
的,所以速度要慢。
可以使用存储过程
sp_helpindex
来查看表的所有索引信息
格式:
Sp_helpindex ‘
表名称
’
索引选择:
在表中哪些列适宜建立索
引呢?
适宜建立索引的列包括:主键字段,外键字段,要排序的
列,要分组的列,以及
WHERE
子句中精确指定的列
(
=
)
Where name like ‘
张
%’
可搜索的。不需要整个表搜索
Where name like ‘%
张
%’
不可搜索的。需要遍历整个表。
不适合建立索引的列:
列的类型是文本,图像或
位
列的唯一性不强,如性别
(十万条)
列的范围太多,不能有效
索引
CREATE INDEX index_name
ON table_name (column_name)
Abstract from:
http://dufei.blog.iyunv.com/382644/80766/
页:
[1]