数据库中的索引

数据库中的索引

首先需要明白索引一旦被创建,将由数据库自动管理和维护。

索引的优点:
  1. 大大加快数据的检索速度
  2. 强制实施行的唯一性,可以保证表中每一行数据不重复
  3. 优化查询
索引的缺点
  1. 创建和维护索引都会消耗时间,当对表中的数据进行增加、删除和修改操作时,索引就要进行维护,否则索引作用就会下降
  2. 每个索引都会占用一定的物理空间
设计索引的原则
  1. 对于查询,大量索引可以提高性能,但是会影响增删改,所以应该避免对经常更新的表建立过多的索引
  2. 对于小型表进行索可能不会产生优化
  3. 对于主键和外键应该考虑建立索引
  4. 很少使用的列和值不应该考虑建立索引
  5. 包含聚合函数是,可以创建索引
  6. 尽量不要再含有大量重复值的表中建立索引
索引分类
 1、普通索引(index):由key或index定义,允许插入重复值和空值  
 2、唯一索引(unique):值唯一,允许有空值,一个表上可以建立多个unique索引
 3、主键索引(primary key):不允许有空值,一个表只能有一个主键索引
 4、全文索引(fulltext):只能创建在char、varchar或text类型的字段上
 5、空间索引(spatial)

也可以分为:
1、单列索引:在表中单个字段上创建的索引
2、复合索引:在表中多个字段上创建的索引
创建索引的方式
create table....
alter table....
create [unique|fulltext|spatial] index 索引名 on 表名(字段名 [asc|desc])

在student表的sname列上建立一个升序普通索引:
create index 索引名 on student(sname asc)
在sc表的sno和cno列上创建一个唯一复合索引:
create unique index on sc(sno asc,cno desc)
删除索引
drop index  索引名 on 表名
alter table 表名 drop index 索引名
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值