学习笔记:

##视图
    * 概念:视图就是提供一个查询的窗口,所有数据来自于原表。
    * 方法:
        * 查询语句创建表:
            * create table emp as select * from scott.emp;
        * 创建视图【必须有dba权限】
            * create view v_emp as select ename, job from emp;
        * 查询视图
            * select * from v_emp;
        * 修改视图【不推荐】
            * update v_emp set job='CLERK' where ename='ALLEN';
            * --做增删改需要加commit
            * commit;
        * 创建只读视图(with read only)
            * create view v_emp1 as select ename, job from emp with read only;

* 作用:
        * 1. 视图可以屏蔽掉一些敏感字段。
        * 2. 保证总部和分部数据及时统一。


##索引

    * 概念:索引就是在表的列上构建一个二叉树。
    * 作用:
        * 达到大幅度提高查询效率的目的,但是索引会影响增删改的效率。
    * 方法:
        * 单列索引
        * 复合索引
    * 单列索引
        * 创建单列索引:
            * create index idx_ename on emp(ename);
        * 注意:
            * 单列索引触发规则,条件必须是索引列中的原始值。
            * 单行函数,模糊查询,都会影响索引的触发(不会触发索引)。
            * select * from emp where ename='SCOTT'
        
    * 复合索引
        * 创建复合索引:
            * 复合索引中第一列为优先检索列。
            * 如果要触发复合索引,必须包含有优先检索列中的原始值。
            * create index idx_ename_job on emp(ename,job);
        * 注意:
            * select * from emp where ename='SCOTT' and job = 'ANALYST';  --触发复合索引
            * select * from emp where ename='SCOTT' or job = 'ANALYST';  --不触发索引
            * select * from emp where ename='SCOTT';  --触发单列索引
    * 判断索引是否被触发(查看执行计划结果)
            * 1. 生成执行计划
                * explain plan for 
                * select * from emp where ename='SCOTT';
                    * 备注:explain plan for后面为要生成执行计划的查询语句
            * 2. 查看执行计划的结果
                * select * from table(dbms_xplan.display);

Oracle的视图和索引的更多相关文章

  1. Oracle对象-视图和索引

    Oracle 对象-视图 视图概念 ​ 视图就是提供一个查询的窗口,所有的数据来自于原表 创建视图[必须有dba权限] --查询语句创建表 create table emp as select * f ...

  2. java:Oracle(视图,索引,序列)

    1.索引:索引一共分为4种 -- 在oracle中, -- normal:普通索引 -- unique:唯一索引 -- bitmap:位图索引 -- B 树索引:默认:如果不建立索引的情况下,orac ...

  3. Oracle数据库之视图与索引

    Oracle数据库之视图与索引 1. 视图简介 视图是基于一个表或多个表或视图的逻辑表,本身不包含数据,通过它可以对表里面的数据进行查询和修改. 视图基于的表称为基表,视图是存储在数据字典里的一条SE ...

  4. Oracle视图,索引,序列

    什么是视图[View] (1)视图是一种虚表 (2)视图建立在已有表的基础上, 视图赖以建立的这些表称为基表(3)向视图提供数据内容的语句为 SELECT 语句,可以将视图理解为存储起来的 SELEC ...

  5. oracle数据库表约束、视图、索引—该记录为本人以前微博的文章

    一.Oracle 数据库常用操作续关于创建表时创建约束1.创建表的时候增加约束----约束是定义表中的数据应该遵循的规则或者满足的条件----约束是建立在列上的,让某一列或者某几列数据之间有约束--- ...

  6. oracle视图和索引

    视图和索引 视图 视图的作用 控制数据访问.简化查询.避免重复访问相同的数据 视图的优点 限制用户只能通过视图检索数据,用户看不到底层基表 注意事项 视图可以理解为临时表,会随着真实表的数据变化而自动 ...

  7. Oracle 物化视图 说明

    一.    物化视图概述 Oracle的物化视图是包括一个查询结果的数据库对像,它是远程数据的的本地副本,或者用来生成基于数据表求和的汇总表.物化视图存储基于远程表的数据,也可以称为快照. 物化视图可 ...

  8. 深入学习Oracle分区表及分区索引

    关于分区表和分区索引(About Partitioned Tables and Indexes)对于10gR2而言,基本上可以分成几类: •       Range(范围)分区 •       Has ...

  9. oracle 分区表和分区索引

    很复杂的样子,自己都没有看完,以备后用 http://hi.baidu.com/jsshm/item/cbfed8491d3863ee1e19bc3e ORACLE分区表.分区索引ORACLE对于分区 ...

随机推荐

  1. Zabbix监控服务器磁盘I/O

    一.场景说明: 需要使用Zabbix监控服务器上各个磁盘的I/O使用率,当zabbix自身带的item无法满足我们的时候,则需自定义item.     包括: 磁盘读的次数 磁盘读的毫秒数 磁盘写的次 ...

  2. Python面试题(2)

    1.一行代码实现1-100的和 ? 1 2 3 print(sum(range(1,101))) #range中的参数是1<=i<101 #sum是计算参数的和 2.在函数内部改变全局变量 ...

  3. 201671030128周琳 实验十四 团队项目评审&课程学习总结

    项目 内容 这个作业属于哪个课程 2016级计算机科学与工程学院软件工程(西北师范大学) 这个作业的要求在哪里 实验十四 团队项目评审&课程学习总结 作业学习目标 掌握软件项目评审会流程:反思 ...

  4. springboot2.0整合logback日志(详细)

    <div class="post"> <h1 class="postTitle"> springboot2.0整合logback日志(详 ...

  5. 绕过dva dispatch在更新model数据的异步

    我的业务是在更新选择列表后,马上进行总价格更新,那么由于model的更新不是实时的,因此我在this.props得到的值还是旧值,解决办法就是通过dispatch成功返回的值,传给计算函数 handl ...

  6. ant design pro 的modal

    通常弹框位置有限,如果一行不下,就拆成两行,例如Table

  7. 从一段文字中提取出uri信息

    package handle.groupby; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io ...

  8. ABP .net framework版 的发布

    先正常的发布流程走 特别的如下图

  9. Python power函数

    power函数 from math import pow def power(x, y): if y == 0: return 1 tot = 1 for i in range(y): tot *= ...

  10. 请解释一下css3的flexbox(弹性盒布局模型),以及适用场景

    弹性盒模型是c3规范的新的布局方式,该布局模型的目的是提供一种更加高效的方式来对容器的条目进行布局.对齐和分配空间.在传统的布局中,block布局是把块级元素在垂直方向从上向下一次排列的,而inlin ...