索引的作用:提高数据查询速度,优化系统最普遍的一种方式
建立索引的目的:可以更加高效快速的查询数据,减少系统的响应时间
索引分为:聚集索引和非聚集索引,主键为聚集索引,唯一约束为非聚集索引
- 聚集索引:Clustered 逻辑顺序与物理顺序是一致的,最多只能有一个,可以没有
- 非聚集索引:NonClustered 逻辑顺序与物理顺便相互独立,可以有多个,也可以没有
如果需要多个列上建立索引,这些列则建立组合索引 选为索引的列,一般应为小数据类型,访问速度快
--默认为非聚集索引
--创建聚集索引
create clustered index PK_Userinfos
on Userinfos(UserId)
with
(
drop_existing=on --设置为on.先删除原来的,然后创建,设置为off,不删除原有的
)
--创建唯一非聚集索引
create unique nonclustered index uq_Userinfos
on Userinfos(username)
with
(
pad_index=on
fillfactor = 50 --指定船舰索引时,每个索引页的数据占索引页大小的百分比
ignore_dup_key =on
)
--读写比:100:1 100
--读小于写:50-70
--读写各一半:80-90
--复合索引
create nonclustered index index_Userinfos
on Userinfos(UserId,username)
with
(
drop_existing=on --设置为on.先删除原来的,然后创建,设置为off,不删除原有的
)