数据库-视图详探
一、定义视图:
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 适当利用视图可以更清晰地表达查询;
本文来自博客园,作者:taotooler,转载请注明原文链接:https://www.cnblogs.com/taolo/p/17225876.html