SQL Server 查看某个表/视图 已存在的索引
一、查看某个表/视图中存在的索引
1、语法:
exec sp_helpindex 表名/视图名
2、返回代码值:0(成功)或 1(失败)
3、结果值:
列名称 数据类型 说明
index_name sysname 索引名。
index_description varchar (210) 索引说明,其中包括索引所在的文件组。
index_keys nvarchar (2078) 对其生成索引的表或视图列。
二、创建索引
语法:
CREATE [索引类型] INDEX 索引名称
ON 表名(列名)
创建索引实例:
聚簇索引 create clustered index index_name on table_name (cloumn_name);
非聚簇索引 create nonclustered index index_name on table_name (cloumn_name);
唯一索引 create unique index index_name on table_name(cloumn_name);
三、删除索引
可利用ALTER TABLE或DROP INDEX语句来删除索引。类似于CREATE INDEX语句,DROP INDEX可以在ALTER TABLE内部作为一条语句处理,语法如下。
DROP INDEX index_name ON talbe_name
ALTER TABLE table_name DROP INDEX index_name
ALTER TABLE table_name DROP PRIMARY KEY
其中,前两条语句是等价的,删除掉table_name中的索引index_name。
第3条语句只在删除PRIMARY KEY索引时使用,因为一个表只可能有一个PRIMARY KEY索引,因此不需要指定索引名。如果没有创建PRIMARY KEY索引,但表具有一个或多个UNIQUE索引,则MySQL将删除第一个UNIQUE索引。
实例:
exec sp_helpindex Fly_ERP_Materia_old --查看索引 create nonclustered index Coding on Fly_ERP_Materia_old (Coding) --创建索引 DROP INDEX Specifications_copy1 ON Fly_ERP_Materia_old --删除索引