1.索引的创建

使用T-SQL创建数据库的索引

image.png
参数说明:
image.png
image.png
**

  1. <br />**用例:**<br />**

1.为Student表的Sno列创建非聚集索引列

CREATE INDEX IX_Stu_Sno
ON Student(Sno)

2.为Student表的Sno列创建唯一聚集索引列

CREATE UNIQUE CLUSTERED INDEX IX_Stu_Sno
ON Student(Sno)

3.为Student表的Sno列创建组合索引

CREATE INDEX IX_Stu_Sno
ON Student(Sno,Sname,Sex)

4.使用 FILLFACTOR 参数为Student表的Sno 列创建一个填充因子为100的非聚集索引

CREATE NONCLUSTERED INDEX IX_Stu_Sno
ON Student(Sno)
WITH FILLFACTOR = 100

5.用 IGNORE_DUP_KEY 参数为Student表的Sno列创建唯一聚集约束,并且不能输入重复值

CREATE UNIQUE CLUSTERED INDEX IX_Stu_Sno
ON Student(Sno)
WITH IGNORE_DUP_KEY


注意:**

不能在表中创建多个聚集索引,创建的索引的名称不能重复

2.索引建立的一般原则

  • 只有表的所有者可以在同一个表中创建索引
  • 每个表中只能创建一个聚集索引
  • 每个表中最多可以创建249个非聚集索引
  • 在经常查询的自动上建立索引
  • 定义text、image和bit数据类型的列上不要建立索引
  • 在外键列上可以建立索引
  • 主键列上一定要建立索引
  • 在重复值较多,查询较小的列上不要建立索引

3.查看索引信息

使用存储过程查看索引信息
**

使用 sp_helpindex 查看Student表的索引信息

EXEC sp_helpindex Student


使用系统表查看索引信息**

使用系统表查看 Student表的索引信息

SELECT index_id, name FROM sys.indexes 
WHERE index_id = (SELECT index_id FROM sys.objects WHERE name = 'Student')

4.索引的修改