视图的功能:一个视图实际上就是封装了一条复杂的查询语句。
创建视图的语法:
CREATE VIEW 视图名称 AS 子查询 ;
视图创建完成之后,就可以像查找表那样直接对视图进行查询的操作。
删除视图的语法:
DROP VIEW 视图名称 ;
但是,如果所有的代码都这样去写肯定很麻烦,因为如果要想修改视图,则肯定要先删除视图,所以在 Oracle 中为了方便用户修改视图,提供一个替换的命令,此时完整的视图创建语法:
CREATE OR REPLACE 视图名称 AS 子查询 ;
使用以上的语法,在更改视图的时候就不用先删除再执行了,系统会为用户自动进行删除及重建的功能。
创建视图的时候是有条件的,一旦修改之后,则此条件就破坏了,所以在创建视图的时候 SQL 中提供了两个重要的参数:
- WITH CHECK OPTION:不能更新视图的创建条件
范例:在视图创建中使用此参数
CREATE OR REPLACE VIEW empv20 AS SELECT * FROM emp WHERE deptno=20 WITH CHECK OPTION ;
视图的本身作用还是用来查询的,所以不应该允许更改,所以此时可以使用第二个参数:
- WITH READ ONLY:创建的视图只读
范例:创建只读视图
CREATE OR REPLACE VIEW empv20 AS SELECT * FROM emp WHERE deptno=20 WITH READ ONLY ;