第10讲SQL中的视图与授权控制ppt课件.ppt

第10讲SQL中的视图与授权控制ppt课件.ppt

ID:59494882

大小:472.50 KB

页数:38页

时间:2020-09-13

第10讲SQL中的视图与授权控制ppt课件.ppt_第1页
第10讲SQL中的视图与授权控制ppt课件.ppt_第2页
第10讲SQL中的视图与授权控制ppt课件.ppt_第3页
第10讲SQL中的视图与授权控制ppt课件.ppt_第4页
第10讲SQL中的视图与授权控制ppt课件.ppt_第5页
资源描述:

《第10讲SQL中的视图与授权控制ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第4章关系数据库标准语言SQL——视图和授权控制SQL语言概述SQL中的数据定义SQL中的数据查询SQL中的数据更新SQL中的视图SQL中的授权控制本章内容视图的概念视图的定义、删除视图的查询视图的更新视图的作用4.5SQL中的视图视图的概念视图是一个命名了的代数表达式,是从一个或几个基本表(或视图)导出的(虚的)关系变量,即视图是一个虚表。在数据库中只存放视图的定义,而不存放视图对应的数据。视图的值是定义表达式计算后所得到的结果。视图为用户提供了一个观察底层数据的窗口。基本表发生变化后,对应视图也就随之改变。用户能像操纵基本关系变量一样来操纵视图。对视图的操作将由

2、DBMS转化为对相应基表的操作,任何对视图的更新将自动和实时地在相应基表中所映射的数据上进行。由用户定义,并为用户所使用。也可在视图之上再定义视图。4.5SQL中的视图视图的定义一般格式为:CREATEVIEW视图名[(列名[,列名]…)]AS子查询;[WITHCHECKOPTION]组成视图的属性列名或者全部指定或者全部省略。在SELECT子句存在下述情形时,需要指明视图的属性列。目标列中含有聚集函数或列表达式;目标列中含对多表查询产生的同名属性列;需要在视图中为某些列使用更合适的名字。4.5SQL中的视图视图的定义一般格式为:CREATEVIEW视图名[(列名[

3、,列名]…)]AS子查询;[WITHCHECKOPTION]子查询可以是任意复杂的SELECT语句,但通常不允许含有ORDERBY子句和DISTINCT选项。WITHCHECKOPTION:表示对视图进行UPDATE和INSERT操作时要保证修改和插入的元组须满足视图定义中的谓词条件。DBMS执行语句的结果只是把视图的定义存入数据字典中,并不执行其中的子查询。4.5SQL中的视图视图的定义4.5SQL中的视图【例】建立数学系的学生视图。CREATEVIEWM-S(M-SNO,M-SN,M-SA)ASSELECTSNO,SN,SAFROMSWHERESD=‘数学’;视

4、图的定义4.5SQL中的视图【例】定义由学号及该学生的平均成绩构成的视图。CREATEVIEWS-GRADE(SNO,SN,CNO,GRADE)ASSELECTS.SNO,SN,CNO,GRADEFROMS,SCWHERES.SNO=SC.SNO;【例】建立学生成绩视图。CREATEVIEWS_AVE(SNO,GAVE)ASSELECTSNO,AVG(GRADE)FROMS_GRADEGROUPBYSNO视图的删除一般格式为:DROPVIEW视图名[CASCADE];CASCADE:把该视图和由它导出的所有视图一起删除4.5SQL中的视图DROPVIEWM-S;【例

5、】将前面建立的视图M-S删除。【例】将前面建立的视图S_GRADE及其上的视图S_AVE删除。DROPVIEWS_GRADECASCADE;视图的查询用户对视图的查询就如同对基表一样,其操作将由DBMS转化为对相应基表的操作。4.5SQL中的视图SELECTSNO,SN,AVG(GRADE)FROMS-GRADEGROUPBYSNO;【例】查询学生平均成绩。SELECTSNO,GAVEFROMS_AVE;视图的查询DBMS执行对视图的查询时,首先进行有效性检查,检查查询中涉及的基本表、视图等是否存在。如果存在,则从数据字典中取出视图的定义,把定义中的子查询和用户查询

6、结合起来,转换成等价的对基本表的查询,然后再执行相应的查询。4.5SQL中的视图视图的查询4.5SQL中的视图SELECTSNO,SN,AVG(GRADE)FROMS-GRADEGROUPBYSNO;【例】查询学生平均成绩。DBMS根据数据字典中对视图S-GRADE的定义,将其转换为等价的对基表的查询操作:CREATEVIEWS-GRADE(SNO,SN,CNO,GRADE)ASSELECTS.SNO,SN,CNO,GRADEFROMS,SCWHERES.SNO=SC.SNO;视图的查询4.5SQL中的视图SELECTSNO,SN,AVG(GRADE)FROMS-G

7、RADEGROUPBYSNO;【例4-41】查询学生平均成绩。SELECTS.SNO,SN,AVG(GRADE)FROMS,SCWHERES.SNO=SC.SNOGROUPBYSC.SNO;DBMS根据数据字典中对视图S-GRADE的定义,将其转换为等价的对基表的查询操作:视图的更新通过视图来插入、删除和修改数据.对视图的更新要转换为对基本表的更新操作。若视图定义中有WITHCHECKOPTION选项,进行更新操作时,DBMS会检查视图定义中的条件,若不满足条件,则拒绝执行该操作。4.5SQL中的视图视图的更新4.5SQL中的视图【例】INSERTINTOM-S

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。