SQL 创建索引

总结:

  1. 什么是索引:数据库中的索引是某个表中一列或多列值的集合和相应的指向表中物理标识这些值的数据页的逻辑指针清单。

  2. 分类:
    唯一索引(UNIQUE):不允许两行具有相同的索引值(创建了唯一约束,系统将自动创建唯一索引
    主键索引:主键索引要求主键中的每个值是唯一的,(创建主键自动创建主键索引)
    聚集索引(CLUSTERED):表中各行的物理顺序与键值的逻辑(索引)顺序相同,表中只能包含一个聚集索引,主键列默认为聚集索引
    非聚集索引(NONCLUSTERED):表中各行的物理顺序与键值的逻辑(索引)顺序不匹配,表中可以有249个非聚集索引

  3. 创建索引的标准:用语频繁搜索的列;用语对数据进行排序的列
    注意:如果表中仅有几行,或列中只包含几个不同的值,不推荐创建索引,因为SQL Server 在小型表中用索引搜索数据所花的时间比逐行搜索更长

 

1:基本语法:

CREATE [索引类型] INDEX 索引名称

ON 表名(列名)

WITH FILLFACTOR = 填充因子值0~100

GO

 

2:基本语法2

USE 库名

GO

IF EXISTS (SELECT FROM SYSINDEXES WHERE NAME='IX_TEST_TNAME')--检测是否已经存在IX_TEST_TNAME索引

DROP INDEX TEST.IX_TEST_TNAME--如果存在则删除

 

--创建索引

CREATE NONCLUSTERED INDEX IX_TEST_TNAME --创建一个非聚集索引

ON TEST(TNAME)  --为TEST表的TNAME字段创建索引

WITH FILLFACTOR = 30 --填充因子为30%

 

3:案例:

 
USE ActivityDB   -- 数据库名称
GO
IF EXISTS (SELECT * FROM SYSINDEXES WHERE NAME='IX_CouponsInfoDN_Code')--检测是否已经存在IX_TEST_TNAME索引  IX_CouponsInfoDN_Code  自己取的索引名称
DROP INDEX CouponsInfoDN.IX_CouponsInfoDN_Code--如果存在则删除  CouponsInfoDN 表明  
 
--创建索引
CREATE NONCLUSTERED INDEX IX_CouponsInfoDN_Code --创建一个非聚集索引
ON CouponsInfoDN(Code)  --为CouponsInfoDN表的Code字段创建索引 CouponsInfoDN是表    Code是字段  
WITH 

 

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值