2020内蒙古国家电网公司人力资源招聘计算机专业考点(834)
特点:虚表,是从一个或几个基本表(或视图)导出的表;只存放视图的定义,不存放视图对应的数据;基表中的数据发生变化,从视图中查询出的数据也随之改变。
基于视图的操作: 查询、删除、受限更新、定义基于该视图的新视图。
(1)定义视图
建立视图
CREATE VIEW <视图名> [(<列名> [,<列名>]…)]
AS <子查询>
[WITH CHECK OPTION];
子查询:不允许含有ORDER BY子句和DISTINCT短语。
WITH CHECK OPTION:表示对视图进行UPDATE,INSERT和DELETE操作时要保证更新、插入或删除的行满足视图定义中的谓词条件(即子查询中的条件表达式)。
组成视图的属性列名:全部省略或全部指定,但在下列三种情况下必须明确指定组成视图的所有列名:
某个目标列不是单纯的属性名,而是聚集函数或列表达式;
多表连接时选出了几个同名列作为视图的字段;
需要在视图中为某个列启用新的名字。
RDBMS执行CREATE VIEW语句时只是把视图定义存入数据字典,并不执行其中的SELECT语句。在对视图查询时,按视图的定义从基本表中将数据查出。
行列子集视图:从单个基本表导出 ,只是去掉了基本表的某些行和某些列保留了主码
例:建立信息系学生的视图
CREATE VIEW IS_Student
AS
SELECT Sno,Sname,Sage
FROM Student
WHERE Sdept= ‘IS’;
WITH CHECK OPTION 例:建立信息系学生的视图,并要求进行修改和插入操作时仍需保证该视图只有信息系的学生
CREATE VIEW IS_Student
AS
SELECT Sno,Sname,Sage
FROM Student
WHERE Sdept= 'IS'
WITH CHECK OPTION;
加上了WITH CHECK OPTION子句:RDBMS对IS_Student视图的更新操作:修改操作:自动加上Sdept= 'IS'的条件;删除操作:自动加上Sdept= 'IS'的条件;插入操作:自动检查Sdept属性值是否为'IS' 。如果不是,则拒绝该插入操作。如果没有提供Sdept属性值,则自动定义Sdept为'IS'。
基于多个基表的视图
例:建立信息系选修了1号课程的学生视图
CREATE VIEW IS_S1(Sno,Sname,Grade)
AS
SELECT Student.Sno,Sname,Grade
FROM Student,SC
WHERE Sdept= 'IS' AND
Student.Sno=SC.Sno AND
SC.Cno= '1';
基于视图的视图
例:建立信息系选修了1号课程且成绩在90分以上的学生的视图
CREATE VIEW IS_S2
AS
SELECT Sno,Sname,Grade
FROM IS_S1
WHERE Grade>=90;
由于视图中的数据不会实际存储,所以定义视图时可根据应用的需要,设置一些派生属性列或虚拟列,以便于查询和统计。
以 SELECT * 方式创建的视图可扩充性差,应尽可能避免 。
缺点:修改基表Student的结构后,Student表与F_Student视图的映象关系被破坏,导致该视图不能正确工作。
删除视图DROP VIEW <视图名>;
该语句从数据字典中删除指定的视图定义。如果该视图上还导出了其他视图,使用CASCADE级联删除语句,把该视图和由它导出的所有视图一起删除 。删除基表时,由该基表导出的所有视图定义都必须显式地使用DROP VIEW语句删除。
例:删除视图BT_S:
DROP VIEW BT_S;
删除视图IS_S1:拒绝执行
级联删除:DROP VIEW IS_S1 CASCADE;
(2) 查询视图:查询视图与查询基本表相同,视图定义后,就可以像对待基本表一样对视图进行查询(SELECT)操作。
视图消解法(View Resolution)进行有效性检查,检查查询的表、视图等是否存在。如果存在,则从数据字典中取出视图的定义 ;转换成等价的对基本表的查询,把视图定义中的子查询与用户的查询结合起来;执行修正后的查询。
例:在信息系学生的视图中找出年龄小于20岁的学生
SELECT Sno,Sage
FROM IS_Student
WHERE Sage<20;
视图消解转换后的查询语句为:
SELECT Sno,Sage
FROM Student
WHERE Sdept= 'IS' AND Sage<20;
例:在S_G视图中查询平均成绩在90分以上的学生学号和平均成绩
SELECT *
FROM S_G
WHERE Gavg>=90;
S_G视图的子查询定义:
CREATE VIEW S_G (Sno,Gavg)
AS
SELECT Sno,AVG(Grade)
FROM SC
GROUP BY Sno;
1.第六届世界互联网大会10月20日在浙江乌镇开幕。国家主席习近平致贺信。习近平指出,今年是互联网诞生50周年。当前,新一轮科技革命和产业变革加速演进,人工智能、大数据、物联网等新技术新应用新业态方兴未艾,互联网迎来了更加强劲的发展动能和更加广阔的发展空间。发展好、运用好、治理好互联网,让互联网更好造福人类,是国际社会的共同责任。各国应顺应时代潮流,勇担发展责任,共迎风险挑战,共同推进网络空间全球治理,努力推动构建网络空间命运共同体。
2.10月20日,第六届世界互联网大会在浙江乌镇开幕。中共中央政治局委员、中宣部部长黄坤明出席开幕式,宣读习近平主席贺信并发表主旨演讲。
3.第七届世界军人运动会公路自行车女子个人、团体赛20日在武汉东湖绿道举行,中国队一举夺得个人和团体的双料冠军。
4.2019年中国技能大赛——第三届全国工业机器人技术应用技能大赛20日在济南闭幕。工业和信息化部副部长王江平出席大赛闭幕式时指出,精心组织和举办大赛的初心,就是要为弘扬精益求精的工匠精神树立鲜明导向,大力培育支撑中国制造、中国创造的高技能人才队伍。
5.第九届北京香山论坛20日晚在北京举行欢迎晚宴。中共中央政治局委员、中央军委副主席许其亮出席并致辞。中央军委委员、国务委员兼国防部长魏凤和,中央军委委员、军委联合参谋部参谋长李作成出席。
编辑推荐:
温馨提示:因考试政策、内容不断变化与调整,长理培训网站提供的以上信息仅供参考,如有异议,请考生以权威部门公布的内容为准! (责任编辑:长理培训)
点击加载更多评论>>