oracle视图和索引
视图和索引
视图
视图的作用
- 控制数据访问、简化查询、避免重复访问相同的数据
视图的优点
- 限制用户只能通过视图检索数据,用户看不到底层基表
注意事项
- 视图可以理解为临时表,会随着真实表的数据变化而自动变化
- 视图的名字以V_开头,表明是视图;
- 视图不提高任何效率
- 视图不占用空间
- 不是所有的视图都能更改(若改动能对应的原来的表,则可以,否则不可以,比如用了聚合函数的,或者group by而来的)
简单视图
语法
create or replace view 视图名 as select 语句;
create or replace:关键字,创建或者替换(若原来没有,则创建,若已经有,则替换原来的)
范例
SQL> create or replace view v_emp as
2 select empno, ename, job from emp;
视图已创建。
SQL> select * from v_emp;
EMPNO ENAME JOB
---------- -------------------- ------------------
7777 S_HH%GGH CLERK
7369 SMITH CLERK
7499 ALLEN SALESMAN
...
只读视图
语法
create or replace view 视图名
as select 语句
with read only;
范例
SQL> create or replace view v_emp2 as
2 select empno,ename,job from emp
3 with read only;
视图已创建。
SQL> delete from v_emp2;
delete from v_emp2
*
第 1 行出现错误:
ORA-42399: 无法对只读视图执行 DML 操作
视图管理
查看
查看指定用户下的所有视图
SQL> select view_name from dba_views where owner='SCOTT';
VIEW_NAME
------------------------------------------------------------
V_DEPT
V_DEPT_EMP
V_EMP
V_EMP2
dba_views查看数据库下所有视图owner='SCOTT'指定用户view_name显示视图的名称
删除
SQL> drop view v_emp;
视图已删除。
SQL> drop view v_emp2;
视图已删除。
SQL> select view_name from dba_views where owner='SCOTT';
VIEW_NAME
------------------------------------------------------------
V_DEPT
V_DEPT_EMP
索引
索引的作用
- 提高查询效率
索引的注意事项
- 限制索引的个数。索引只要提升查询速度,但会降低 DML 操作的速度
- 索引名字唯一,长度不超过32位
- 索引列可以不止一列(组合索引或者复合索引),但唯一性高的在第一位(即重复数据少)
- 给表初始化时,须先将索引drop或者unusable(先插入数据,后建索引)
- 索引名称以IND或者IDX开头;
普通索引
语法
create index 索引名 on 表名(列名);
范例
SQL> create index IND_emp_deptno on emp(deptno);
索引已创建。
唯一索引
语法
create unique index 索引名字 on 表名(列名);
范例
SQL> create unique index ind_indtest_id on ind_test(id);
索引已创建。
管理索引
查看
SQL> select index_name from user_ind_columns where table_name='EMP';
INDEX_NAME
------------------------------------------------------------
UNIQUE_EMP_ENAME
PK_EMP
SQL> select index_name from user_ind_columns where table_name='IND_TEST';
INDEX_NAME
------------------------------------------------------------
IND_INDTEST_ID
删除索引
SQL> drop index IND_emp_deptno;
索引已删除。
SQL> drop index IND_INDTEST_ID;
索引已删除。
oracle视图和索引的更多相关文章
- Oracle视图,索引,序列
什么是视图[View] (1)视图是一种虚表 (2)视图建立在已有表的基础上, 视图赖以建立的这些表称为基表(3)向视图提供数据内容的语句为 SELECT 语句,可以将视图理解为存储起来的 SELEC ...
- Oracle 视图和索引
一.视图 1.什么是视图[View] (1)视图是一种虚表 (2)视图建立在已有表的基础上, 视图赖以建立的这些表称为基表 (3)向视图提供数据内容的语句为 SELECT 语句,可以将视图理解为存储起 ...
- Oracle数据库之视图与索引
Oracle数据库之视图与索引 1. 视图简介 视图是基于一个表或多个表或视图的逻辑表,本身不包含数据,通过它可以对表里面的数据进行查询和修改. 视图基于的表称为基表,视图是存储在数据字典里的一条SE ...
- Oracle数据库对象,同义词、序列、视图、索引
数据库对象简介 Oracle 数据库对象又称模式对象 数据库对象是逻辑结构的集合,最基本的数据库对象是表 其他数据库对象包括: 同义词是现有对象的一个别名. 简化SQL语句 隐藏对象的名称和所有者 提 ...
- java:Oracle(视图,索引,序列)
1.索引:索引一共分为4种 -- 在oracle中, -- normal:普通索引 -- unique:唯一索引 -- bitmap:位图索引 -- B 树索引:默认:如果不建立索引的情况下,orac ...
- Oracle视图分类及各种操作讲解(超级好文)
目录:一.视图的定义: 二.视图的作用: 三.创建视图: 1.权限 2.语法 3.1 创建简单视图 3.2 创建连接视图 3.2.1 连接视图定义 3.2.2 创建连接视图 3.2.3 ...
- Oracle笔记 目录索引
Oracle笔记 一.oracle的安装.sqlplus的使用 Oracle笔记 二.常用dba命令行 Oracle笔记 三.function .select Oracle笔记 四.增删改.事务 Or ...
- oracle视图总结
视图简介: 视图是基于一个表或多个表或视图的逻辑表,本身不包含数据,通过它可以对表里面的数据进行查询和修改.视图基于的表称为基表.视图是存储在数据字典里的一条select语句. 通过创建视图可以提取数 ...
- oracle视图总结(转)
视图简介: 视图是基于一个表或多个表或视图的逻辑表,本身不包含数据,通过它可以对表里面的数据进行查询和修改.视图基于的表称为基表.视图是存储在数据字典里的一条select语句. 通过创建视图可以提取数 ...
随机推荐
- Python语法速查: 15. 常用数据结构
返回目录 本篇索引 (1)array (2)bisect (3)deque (4)defaultdict (5)namedtuple (6)heapq (7)itertools (1)array ar ...
- js中获取当前url路径
可以使用 window.location 获取当前页面url.以下是一些简单应用. <script> $(function(){ // 返回 web 主机的域名,如:http://127. ...
- C# 使用NAudio合并mp3、wav音频文件
1.什么是wav格式 WAV为微软公司(Microsoft)开发的一种声音文件格式,它符合RIFF(Resource Interchange File Format)文件规范,用于保存Windo ...
- 如何用上新版本的 IDEA(IDEA 2019.2.2版本)
转载请注明出处 电脑重装系统后,重新安装了最新版的IDEA发现,用原来的方式弄得话不成功.又下载了2018版本的,用原来的方式还是可以到2099年的.原来是IDEA现在很重视这方面,原来的方法在新版本 ...
- UTXO和Account模型一个都不能少
UTXO对于非区块链从业人员来说可能比较陌生,UTXO的全称是Unspent Transaction Output,这中本聪在比特币中的一个天才设计.而Account模型就很常见,也很容易理解,你银行 ...
- 痞子衡嵌入式:飞思卡尔i.MX RTyyyy系列MCU特性那些事(2)- RT1052DVL6性能实测(CoreMark)
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是飞思卡尔i.MX RTyyyy系列MCU的性能. 在前面的文章 i.MXRTyyyy微控制器概览 里,痞子衡给大家简介过恩智浦半导体在2 ...
- three.js通过canvas实现球体世界平面地图
概况如下: 1.SphereGeometry实现自转的地球: 2.THREE.CatmullRomCurve3实现球体线条地图点确定: 3.THREE.Math.degToRad,Math.sin,M ...
- R3环申请内存时页面保护与_MMVAD_FLAGS.Protection位的对应关系
Windows内核分析索引目录:https://www.cnblogs.com/onetrainee/p/11675224.html 技术学习来源:火哥(QQ:471194425) R3环申请内存时页 ...
- (转)颜色直方图, HSV直方图, histogram bins
原文链接:https://www.xuebuyuan.com/3256564.html 一个histogram,通常可以用一个列向量表示(例子中的a,b),列向量里面的每一个值就是一个bin(a,b) ...
- 神探Python程序员,带你千里捉小三!(附详情代码)
前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者: 王翔 清风Python PS:如有需要Python学习资料的小伙伴 ...