6.1、索引--Oracle模式对象
2016-05-19 23:31
483 查看
1、创建索引:
(1).单列索引Create index name_index on 门诊费用记录(id)
(2).复合索引
同一张表可以有多个索引,但是要求列的组合必须不同,
--例如:
Create index emp_id on emp(ename,job);
Create index emp_id on emp(job,ename);
搜索是按照从后往前的顺序查找到,所以建立索引时,应按照列的区分度
2、创建原则:
(1).在大表上创建索引才有意义;(2).在where子句或是连接条件上,经常引用的列上建立索引;
(3).索引的层次不要超过4层。
3、查看索引
显示表上包含的所有索引:查询数据字典视图dba_indexs(数据库所有索引)和user_indexs(当前用户的索引)
Select index_name,index_type from user_indexs where table_name='表名';
--例如:
select * from user_indexes where table_name='门诊费用记录'
显示索引中的列:
查询数据字典视图user_ind_columns
Select table_name,column_name from user_ind_columns where index_name='IND_NAME';
--例如:
Select * from user_ind_columns where index_name in('门诊费用记录_IX_登记时间','门诊费用记录_IX_医嘱序号')
4、索引的优点和缺点:
优点:(1).通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性。
(2).可以大大加快数据的检索速度,这也是创建索引的最主要的原因。
(3).可以加速表和表之间的连接,特别是在实现数据的参考完整性方面特别有意义。
(4).在使用分组和排序子句进行数据检索时,同样可以显著减少查询中分组和排序的时间。
(5).通过使用索引,可以在查询的过程中,使用优化隐藏器,提高系统的性能。
缺点:
(1).占硬盘和内存空间;
(2).更新(增删改)数据时,索引要动态维护,系统需要额外的时间和资源参与维护,以维持数据和索引的一致性;
相关文章推荐
- Oracle10GODP连接11G数据库,出现ORA - 1017用户名/口令无效; 登录被拒绝 的问题
- Oracle问题整合
- Oracle查询(select)
- oracle拼接字段和group by的使用
- 【知识积累】使用Navicat连接Oracle数据库遇到的问题
- oracle sql学习三
- COALESCE函数
- 图解Oracle 12c 安装示例数据库
- Oracle10g新特性——正则表达式 - 转
- 忘记oracle的sys用户密码怎么修改
- centos上安装 oracle jdk7
- 20160519:利用Toad的LogMiner进行Oracle归档日志内容分析
- java 通过jdbc连接oracle集群
- Oracle导入导出数据
- Oracle Parallel 多线程
- Oracle 创建带时间戳的表
- Oracle创建表空间和用户名
- Oracle 行转列总结 Case When,Decode,PIVOT 三种方式 - 转
- Oracle数据库迁移
- Oracle常用字段类型