Oracle视图view讲解——我的oracle学习之路

首先我们了解下什么是视图:
     视图就是封装了一条复杂查询的语句,视图是一个虚表,最大的优点就是简化了复杂的查询(比如多表联查,我们可以把多张表整合到一个视图上面)。
      换句话说,视图就是一张虚拟的表,本身不存放数据,数据来源于原始的表


CREATE [OR REPLACE] VIEW 视图名
AS
SELECT查询   (需要查询的结果)                                       
[WITH READ ONLY CONSTRAINT] 
(设置是否可以对视图进行增删改查)

语法解析:

  • OR REPLACE:如果视图已经存在,则替换旧视图。
  • FORCE:即使基表不存在,也可以创建该视图,但是该视图不能正常使用,当基表创建成功后,视图才能正常使用。
  • WITH READ ONLY:默认可以通过视图对基表执行增删改操作,但是有很多在基表上的限制(比如:基表中某列不能为空,但是该列没有出现在视图中,则不能通过视图执行insert操作),WITH READ ONLY说明视图是只读视图,不能通过该视图进行增删改操作。现实开发中,基本上不通过视图对表中的数据进行增删改操作。
  1. 创建视图
    create or replace view emp_view as select * from emp;
    或者指定数据列进行创建
    select or replace view emp_view as select empno,ename,hiredate from emp;
  2. 查询视图
    select * from emp_view;
  3. 修改视图中7369的名字为’smith’
    update emp_view set ename = ‘smith’ where empno = 7369;
  4. 删除视图
    drop view emp_view;
  5. 创建只读视图
    create or replace view emp_view as select * from emp with read only;
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章