数据库--------视图

本文详细介绍了数据库的视图创建、删除、查询和更新操作,包括不同类型的视图示例,如信息系学生的视图、带虚拟列的视图等。视图的作用在于简化用户操作、提供多角度数据查看、逻辑独立性和数据安全保护。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

创建视图

create view<视图名>[(<列名>[,<列名>]...)]
as<子查询>
[with check option]

子查询可以是任意的select语句,是否可以含有order by子句和distinct短语,则取决于具体系统的实现。

with check option表示对视图进行update、insert和delete操作时要保证更新、插入或删除的行满足视图定义中的谓词条件(即子查询中的条件表达式

组成视图的属性列名要么全部省略要么全部指定
下列三种情况下必须明确指定组成视图的所有列名:
①某个目标列不是单纯的属性名,而是聚集函数或列表达式;
②多表连接时选出了几个同名列作为视图的字段;
③需要在视图中为某个列启用新的更合适的名字。

例:建立信息系学生的视图

create view is_Student
as
select sno,sname,sage
from Student
where Sdept='IS'

创建视图语句的结果:
只是把视图的定义存入数据字典,并不执行其中的select语句。只是在对视图查询时,才按视图的定义从基本表中将数据查出。




例1

建立信息系学生的视图,并要求进行修改和插入操作时仍需保证该视图只有信息系的学生

create view IS_Student
as
select Sno,Sname,Sage
from Student
where Sdept='IS'
with check option

由于在定义IS_Student视图加上with check option子句,以后对该视图进行插入、修改、删除操作时,关系数据库管理系统会自动加上Sdept='IS’的条件

若一个视图是从单个基本表导出的,并且只是去掉了基本表的某些行某些列,但保留了主码,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值