Oracle普通索引和唯一索引

普通索引

普通索引的唯一任务是加快对数据的访问速度。
因此,应该只为那些最经常出现在查询条件(WHERE column = )或排序条件创建索引。
普通索引允许被索引的数据列包含重复的值。

唯一索引

  唯一索引除了可以提高查询速度,还能做到列属性唯一,可以用作幂等性保证,唯一性约束等。
 
  这里补充下主键:
     创建主键SQL:
        SQL >  alter table 表名 add constraint 主键名 primary key (主键字段);
  主键是一种约束,和索引本质上是不同的,但是oracle中创建主键后会自动生成一个
  唯一索引。删除主键时也会把同名的索引删除。 
  但是唯一索引不一定是主键。
  主键和唯一索引的区别:主键列一定不允许空值,但是唯一索引列可以。

区别

 如果是普通索引,查询到指定结果后肯定要继续查,知道查找到第一个不满足条件的才会停止。
 如果是唯一索引,查到第一个满足的就不会继续查的。

创建语句

oracle : 
   
   创建唯一索引:
   create unique index 索引名称 on 表名(列字段);

   普通索引:
   单索引
   create index 索引名称 on table(列字段);
   
   删除索引
   drop index 索引名称;
 
   复合索引
   create index 索引名称  ON 表名(字段1,字段2);

   查询某张表中所有索引
   select * from ALL_INDEXS where table_name = 表名;

   查询某张表加了索引的列
   select * from ALL_IND_COLUMN where table_name = 表名;

   索引优缺点:
   优点 : 加快查询速度
   缺点 : 更新,要把索引也进行更新
  • 4
    点赞
  • 37
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值