Oracle对象-视图和索引
Oracle 对象-视图
视图概念
视图就是提供一个查询的窗口,所有的数据来自于原表
-
创建视图【必须有dba权限】
--查询语句创建表 create table emp as select * from scott.emp; select * from emp; --创建视图 create view v_emp as select ename,job from emp; --查询视图 select * from v_emp; --修改视图[能修改,不推荐] update v_emp set job='CLERK' where ename='ALLEN'; commit; --创建只读视图 create view v_emp1 as select ename,job from emp with read only;
-
视图的作用
- 视图可以屏蔽掉一些铭感字段
- 保证总部和分部数据及时统一
Oracle 对象-索引
索引的概念
索引就是在表的列上构建一个二叉树,达到大幅度提高查询效率的目的,但是索引会影响增删改的效率。
-
单列索引
create index idx_ename on emp(ename);
单列索引触发规则:条件必须是索引列中的原始值。
单行函数、模糊查询都会影响索引触发
-
复合索引
create index idx_ename on emp(ename,job);
复合索引触发规则:复合索引中第一列为优先检索列,如果要触发复合索引,必须包含有优先检索列中的原始值。
select * from emp where ename='SCOTT' and job='xx';--触发复合索引 select * from emp where ename='SCOTT' or job='xx';--不触发索引 select * from emp where ename='SCOTT';--触发单列索引