[ORACLE] 数据库视图相关操作

一、CREATE VIEW语句创建视图

语法格式为:

CREATE [OR PLACE] [FORCE|NOFORCE] VIEW [<用户方案名>.]<视图名> [(<列名>[,....n])]

AS

        <SELECT 查询语句>

        [WITH CHECK OPTION [ CONSTRAINT<约束名>] ]

        [WITH READ ONIY]

(1)OR REPLACE:在创建视图时,如果已有同名视图,则重新创建。

 (2)FORCE:表示强制创建一个视图,无论视图的基表是否存在或拥有者是否有权限,NOFORCE则相反,默认为NOFORCE。

(3)列名:可以自定义视图中包含的列。

(4)SELECT查询语句:可在SELECT 语句中查询多个表或视图,以表明新创建的视图所参照的表或视图。

(5)WITH CHECK OPTION:在视图上所进行的修改都要符合SELECT语句所指的限制条件。这样可以确保数据修改后,仍可通过视图查询到修改的数据。

(6)WITH READ ONLY:规定视图中不能执行删除、插入、更新操作,只能检索数据。

【例1】创建CS_KC视图,包括计算机专业各学生的学号、其选修的课程号及成绩。要保证对该视图的修改要符合专业为“计算机”这个条件。

 【例2】创建计算机专业学生的平均成绩视图CS_KC_AVG,包括学号和平均成绩。

 二、查询视图

视图定义后,可如查询表那样对视图进行查询。

三、更新视图

1、插入数据

2、修改数据

使用UPDATE语句可以通过视图修改基本表的数据。

【例】将CS_XS视图中所有学生的总学分增加8分。

注:视图依赖多个基本表时,一次修改只能更改一个表中值,不能跨表修改。

3、删除数据

使用DELETE语句。

【例】删除视图CS_XS中学号为151115的学生的记录

 四、修改图

Oracle系统中,没有单独的修改视图的语句,修改视图定义的雨具就是创建视图的语句。

修改视图而不是删除和重建视图的好处是,相关权限依然存在,系统不会将其作为不同的视图来对待。

【例】修改视图CS_KC的定义,增加姓名,课程名和成绩等字段。

五、删除视图

DROP VIEW语句

格式:DROP VIEW <视图名>

【例】

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值