数据库-视图详探

一、定义视图:

1 视图的建立:SQL语言中用CREATE VIEW命令建立;
示例:

Create view <name> [<列名>[,<列名>]···)]
as <子查询> with check option];

子查询可以是任意select 语句

在关系数据库管理系统中 create view 语句的结果只是把视图的定义存入数据,并不会执行select语句。

二、行列子集视图

从单个基本表导出来的,并且只是去掉了基本表的某些行和某些列,但是保留了主码,则这类视图叫做行列自己视图。

create view IS_Student
as
selcet Sno,Sname,Sage
from student
where Sdept='IS';

IS_Student视图👆就可以看作是一个行列子集视图;

视图不仅可以建立在单个基本表上,也可建立在多个基本表上;

视图不仅可以建立在多个基本表上,还可以建立在一个或多个已定义好的视图上,或建立在基本表与视图上。

三、删除视图

语句:

drop view <视图名>[cascade];

四、查询视图

示例:在信息系学生中的视图找出年龄小于20岁的学生。

select Sno,Sage
from IS_Student
where Sage<20;

五 更新视图

更新视图一般用 insert(插入)、delete(删除)、update(修改)数据;
示例:
将计算机系学生视图IS_Student中学号为2011050321的学生姓名修改为“张宇”。

update IS_Student
set Sname='张宇'
where Sno='2011050321';
实际转换后的更新语句为:
update Student
set Sname='张宇'
where Sno='2011050321' and Sdept='IS';

六 视图的作用(优点)

1 视图能够简化用户的操作;

2 视图使用户能以多种角度看待同一数据;

3 视图对重构数据库提供一定程度的逻辑独立性;

4 视图能够对机密数据提供安全保护;

5 适当利用视图可以更清晰地表达查询;

posted @   taotooler  阅读(22)  评论(0编辑  收藏  举报  
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
· 【杂谈】分布式事务——高大上的无用知识?
点击右上角即可分享
微信分享提示