Microsoft SQL Server 索引
8.1创建索引
CREATE INDEX idx_name ON table_name(列名)
--创建非聚集索引
use student
go
create nonclustered index idx_name
on student(sname)
go
--创建复合索引
create unique nonclustered index idx_muname
on student(sno,ssex,sage,sdept)
go
唯一索引 UNIQUE INDEX
8.2查看索引
--查看master数据库表的索引信息
EXEC sp_helpindex tablename
8.3更改索引
--更改索引名称
exec sp_rename 'table.old_index_name','table.new_index_name'
--修改索引名称
exec sp_rename 'student.idx_name','student.inx_name1'
--对索引进行修改,使其成为唯一索引
drop index student.idx_name
create unique index idx_name
on student(sname)
alter index idx_name on student rebuild
8.4删除索引
--删除表的索引
DROP INDEX table_name.index_name
--删除索引
drop index student.inx_name1
8.5索引维护
8.5.1检查整理索引碎片
--检查表的索引碎片信息
DBCC SHOWCONTIG (table_name,index_name)
--整理数据库上表的索引上碎片信息
DBCC INDEXDEFRAG (database_name,table_name,index_name)
8.5.2重新组织索引
ALTER INDEX REORGANIZE
8.5.3重新生成索引
--带 REBUILD 子句的 ALTER INDEX
--带 DROP_EXISTING 子句的 CREATE INDEX
8.5.4更新数据库表的索引统计信息
UPDATE STATISTICS table_name