mssql sqlserver 查看、新增、删除索引的方法分享


摘要:
下文系统的讲述sqlserver中索引的查看 新增 删除的方法,如下所示:



一、索引功能说明

索引列通常是有序存储,当我们检索列上的数据时,数据库将利用一些既定的索引规则,快速的查找出相关数据。
例:
新建表 testA,testB,testC 分别包含 keyIdA,keyIdB,keyIdC, 每张表拥有100条数据,分别存储相同的数据集合
—当无索引的情况下检索数据,如下
select keyIdA,keyIdB,keyIdC from testA,testB,testC where keyIdA =keyIdB and keyIdB = keyIdC
—无索引时,首先需查找出三张表的所有组合,然后再运用条件进行匹配,会产生 100*100*100中组合情况,此查询会非常慢,
—当我们对三张表建立索引后,查询速度将变的超快
每次查询都会采用直接定位的方式,使数据检索速度加快


二、索引创建方法

CREATE INDEX [索引名称] ON [表名](列集合)
CREATE UNIQUE INDEX [索引名称] ON [表名] (列集合)
ALTER TABLE [表名] ADD PRIMARY KEY ([列名]) —创建主键

三、删除索引的方法分享

DROP INDEX [索引名] ON [表名]

四、查看索引的方法

  select b.name  from sys.sysobjects a, sys.sysindexes b 
 where a.id = b.id  and a.name = '表名'  

举例说明:

 create table test(keyId int not null)

go
CREATE INDEX ix_name ON test (keyId) --索引建立
CREATE UNIQUE INDEX ix_2 ON test (keyId)--索引建立
ALTER TABLE test ADD PRIMARY KEY (keyId)--添加主键
DROP INDEX ix_name ON test  --删除索引
 go
 ---表索引查看
select b.name  from sys.sysobjects a, sys.sysindexes b 
 where a.id = b.id  and a.name = 'test'  


go 
truncate table test
drop     table test

mssql_sqlserver_索引相关知识 mssql_sqlserver_索引相关知识[/captio