1.索引的创建
使用T-SQL创建数据库的索引
参数说明:
**
<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')