继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

oracle数据库-索引index

i文Vin
关注TA
已关注
手记 16
粉丝 46
获赞 613

index :用来提高查询效率的机制
全表扫描方式( Full Table Scan ):查询效率极低
 索引查询:比全表扫描快
 索引的结构:数据+地址( 如:张三+Room203 )

注意:对于数据变更频繁(DML操作频繁)的表 , 索引会影响查询性能

自动创建索引:
如果数据表有PK/Unique两种约束,索引自动创建 , 除此以外,索引必须手动创建

自定义索引语法:
create index 索引名 on 表名(列名) ;
例:
表的主键和唯一约束条件 , 会自动创建索引
SQL> create table student_ning7(
id number(4),
name char(20),
email char(40),
constraint stu_n7_id_pk primary key(id),
constraint stu_n7_email_uk unique(email)
) ;

--注意查询时表名大写
SQL> select constraint_name
from user_constraints
where table_name = 'STUDENT_NING7' ;
-- 查询student_ning7表上的索引
-- 和主键/唯一约束条件同名 , 数据库自动创建的索引

SQL> select index_name from user_indexes
where table_name = 'STUDENT_NING7' ;
-- 凡是有约束条件的字段( 如id或email )上的查询 , 会使用索引
--这种查询用不到索引:全表扫描
SQL> select * from student_ning7
where name = 'zhangsan' ;

图片描述

打开App,阅读手记
2人推荐
发表评论
随时随地看视频慕课网APP