一、对视图进行DML操作

1.创建一个视图v_test

create or replace view v_test
as select *from test where c_sec_code = '00939 HS'

2.向视图 v_test中进行insert操作

insert into v_test (c_sec_code,d_sett) values('00939 HS', date'2018-01-01')

ps:只能对简单的视图进行DML操作,复杂的视图是无法执行DML操作.

练习: 当前视图v_test数据

视图v_test的基表test,该表当前数据是:

对视图插入数据

此时查询视图,多了一行数据

查询基表,多了一行数据

练习: 当前视图v_test数据(加上with check option)

重新创建视图: create or replace view v_test
as select *from test where c_sec_code = '00939 HS' with check option

执行插入语句

with check option对数据进行校验,如果满足where条件,才允许插入,否则不允许插入.

练习(with read only)

创建视图

create or replace view v_test
as select *from test where c_sec_code = '00939 HS' with read only

执行插入语句:insert into v_test (c_sec_code,d_sett) values('00939 HS', date'2018-01-01'),会报错.因为视图在创建的时候要求只读。

由于视图可以是基于多个表的链接查询,所以,视图可以简化用户的查询,允许用户从多个表中检索数据而不需要知道基表是如何连接的。

视图可以有访问权限,但可以对基表没有访问权限,从而限制了数据库的访问。

简单的视图可以实现对基表的DML操作。

当视图执行DML操作时,同样受基于表上的约束的限制。

oracle:对视图DML操作相关推荐

  1. Oracle数据库,当DML操作时执行触发器记录日志

    一图搞定 看图说话 老师都这么说:

  2. oracle 创建视图用 with check option 子句详解

    oracle的视图是一个很有用的工具,在很多应用中的应用到. 在oracle视图中,对于简单视图,oracle 允许进行 dml 操作 ,这就是说明如果我们在一个表上创建了一个视图,前提是没有限制对它 ...

  3. oracle 视图带条件,Oracle视图可以进行DML操作的条件

    条件一:在连接视图中不能有Order by.Group by.connetc by等语句排序语句. 条件二:基础表中所有的NOT NULL列都必须在这个视图中. 条件三:需要更新的列不是虚拟列. 条件 ...

  4. Oracle的闪回技术--闪回错误的DML操作

    提交DML操作后,该操作使用的还原段就可以被其它对象使用了,为了保证闪回操作时这些数据仍然被保存在还原段中,可能需要重新设置undo_retention参数,表示一个事务提交后,该事务的数据必须保存在 ...

  5. Oracle 原理: 视图,对视图进行增删改操作

    Oracle的视图和SQLServer的视图基本一样. 视图,是一个虚拟的表,不会给视图分配存储空间.视图的建立需要依赖于单个或多个普通表,被依赖的普通表就成为"基表".可以就像 ...

  6. oracle锁mode,【案例】Oracle dml操作产生TM锁 lmode=6 分析原因和解决办法

    [案例]Oracle dml操作产生TM锁 lmode=6 分析原因和解决办法 时间:2016-12-04 20:22   来源:Oracle研究中心   作者:网络   点击: 次 天萃荷净 Ora ...

  7. oracle常用的视图和操作

    分享一些oracle常用的视图和操作 官方网址 https://docs.oracle.com/database/121/REFRN/toc.htm 查询数据库逻辑大小 select sum(byte ...

  8. oracle中dml操作,Oracle的DML操作过程

    DML操作,Oracle所有进程配合执行的过程成! 用户将DML操作的语句通过进程传输给sga中的buffer cache,然后在buffer cache中对所更改的数据块进行更新操作,然后首先由lo ...

  9. 【干货】Oracle数据库常用十一大操作指令

    相关文章导读 收藏 | 超详细的Oracle19c安装步骤_XMWS-IT-CSDN博客 DBA数据库管理必备认证:ORACLE OCP 19C 教材下载 Oracle数据库常用十一大操作指令 1. ...

最新文章

  1. 猖狂!微软、思科源码惨遭黑客 100 万美元打包出售
  2. Survey | 深度学习方法在生物网络中的应用
  3. linux命令行终端的翻屏滚屏,linux命令行终端的翻屏滚屏more/less/head/tail
  4. mac java偏好设置_在 Mac中配置Java开发环境
  5. Python瓦匠 —— 正则表达式(五)
  6. go mongodb排序查询_「赵强老师」MongoDB中的索引(下)
  7. Django(part39)--制作图书管理系统
  8. oracle免费云攻略,使用免费的Oracle云服务-创建云主机
  9. mysql有哪些特色SQL语句_Linux-MySQL-有哪些常用sql语句
  10. 数控加工仿真系统 - FANUC OI 车床编程笔记(粗略)
  11. linux安装文泉驿字体,centos 安装文泉驿字体教程,centos文泉驿字体下载字体(URL:h...
  12. STM32示波器设计
  13. 机器学习与数据挖掘的学习路线图
  14. Spring Security 小记 - @Secured(), @PreAuthorize() 及 @RolesAllowed()
  15. 18张图,揭开阿里巴巴开发手册强制使用SLF4J作为门面担当的秘密
  16. KUP-11010: unable to open at least one dump file for fetch
  17. -webkit-touch-callout: none;禁止ios弹出菜单,长按图片保存到手机时
  18. 分析IE浏览器不能上网的原因
  19. 魔兽世界lua笔记(4、集合石插件修改,实现集合石亮灯hack)
  20. 一个更好的可视化微服务架构的方式

热门文章

  1. 在一个千万级的数据库查寻中,如何提高查询效率?
  2. 【2017-05-30】WebForm文件上传。从服务端删除文件
  3. mount windows目录
  4. poj 1379 模拟退火法
  5. Unity Time的使用
  6. [译] 新手和老手都将受益的JavaScript小技巧
  7. jquery 动态生成html后click事件不触发原因
  8. 类WebOS(添加了主界面,及相关功能代码)
  9. 标号的类型是near还是far有什么区别,作用是什么?
  10. 前端常用插件、工具类库汇总(上)