




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第七章 视图及格式化查询结果视图的特点l虚表,是从一个或几个基本表(或视图)导出的表l只存放视图的定义,不存放视图对应的数据l基表中的数据发生变化,从视图中查询出的数据也随之改变视图的作用1. 视图能够简化用户的操作2. 视图使用户能以多种角度看待同一数据 3. 视图对重构数据库提供了一定程度的逻辑独立性 4. 视图能够对机密数据提供安全保护5. 适当的利用视图可以更清晰的表达查询基于视图的操作l建立新视图l查询l删除l受限更新一、建立视图l语句格式 CREATE VIEW ( ,) AS WITH CHECK OPTION;l组成视图的属性列名:全部省略或全部指定l子查询不允许含有ORDER
2、 BY子句和DISTINCT短语CREATE VIEW view_name AS SELECT WHERE with check option constraint c_name;create view cview asselect * from coursewhere cno=c001with check option constraint cno 建立视图(续)lRDBMS执行CREATE VIEW语句时只是把视图定义存入数据字典,并不执行其中的SELECT语句。l在对视图查询时,按视图的定义从基本表中将数据查出。建立视图举例 例1 建立信息系学生的视图。 CREATE VIEW IS_S
3、tudent AS SELECT Sno,Sname,Sage FROM Student WHERE Sdept= IS;例2建立信息系学生的视图,并要求进行修改和插入操作时仍需保证该视图只有信息系的学生 。 CREATE VIEW IS_Student AS SELECT Sno,Sname,Sage FROM Student WHERE Sdept= IS WITH CHECK OPTION;建立视图举例l对IS_Student视图的更新操作:l修改操作:自动加上Sdept= IS的条件l删除操作:自动加上Sdept= IS的条件l插入操作:自动检查Sdept属性值是否为IS l如果不是,
4、则拒绝该插入操作l如果没有提供Sdept属性值,则自动定义Sdept为IS建立视图举例例3 建立信息系选修了1号课程的学生视图。CREATE VIEW IS_S1(Sno,Sname,GradeAS SELECT Student.Sno,Sname,Grade FROM Student,SC WHERE Sdept= IS AND Student.Sno=SC.Sno AND SC.Cno= 1;建立视图举例例4 建立信息系选修了1号课程且成绩在90分以上的学生的视图。 CREATE VIEW IS_S2 AS SELECT Sno,Sname,Grade FROM IS_S1 WHERE G
5、rade=90;建立视图举例例5 定义一个反映学生出生年份的CREATE VIEW BT_S(Sno,Sname,Sbirth) AS SELECT Sno,Sname,2000-Sage FROM Student;建立视图举例二、删除视图l语句的格式:DROP VIEW ;l该语句从数据字典中删除指定的视图定义l如果该视图上还导出了其他视图,使用CASCADE级联删除语句,把该视图和由它导出的所有视图一起删除 l删除基表时,由该表导出的所有视图定义都必须显式地使用DROP VIEW语句删除 查询视图l用户角度:查询视图与查询基本表相同lRDBMS实现视图查询的方法l视图消解法(View Re
6、solution)l进行有效性检查l转换成等价的对基本表的查询l执行修正后的查询查询视图(续)例9 在信息系学生的视图中找出年龄小于20岁的学生。 SELECT Sno,Sage FROM IS_Student WHERE Sage20;l视图消解转换后的查询语句为: SELECT Sno,Sage FROM Student WHERE Sdept= IS AND Sage set linesize 120pagesize 使用pagesize命令可以设置每一页的大小,从而控制每一页显示的数据量。Pagesize的默认设置为14。SQL set pagesize 20pause 使用pause
7、命令命令,可以通知SQL*Plus在一页之后停止滚动屏幕上输出的数据。SQL Set pause onfeedback feedback命令通知SQL*Plus在查询结果集的末尾输出一行,以便指出查询中返回的数据行数量,在默认情况下,feedback被设置为on。 SQL Set feedback on示例查看环境设置 show命令可以用来查看当前的环境设置情况SQL show linesizelinesize 200SQL show pausePAUSE 为 OFFSQL show all 参见P127替换变量 替换变量用来临时代替语句中那些无法确定的值,这些值将来可以由用户随机输入。替换变
8、量有三种形式:&变量名&变量名Define定义 、Accept带输入提示&替换变量SQL select * from student 2 Where ssex= &sex;输入 sex 的值: male原值 2: Where ssex=&sex新值 2: Where ssex=maleSNO SNAME SSEX SAGE SDEPT- - - - -07001 john male 18 ms07002 mike male 18 ms替换变量还可出现在列名、表名等部分&替换变量 在一条语句中,当同一个替换变量要多次使用时,为了避免重复输入,前面的替换变量应定义为&示例DefineDefine 用于定义变量 Define 变量名 = 值 define aa=djdj 定义变量并赋值 define aa 显示变量 SQLdefine sn
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 广西统计从业资格考试及答案解析
- 司机从业资格证考试试题及答案解析
- 会计岗安全培训试题及答案解析
- 医学三基考试试题及答案
- 畜牧兽医考试题及答案
- 内审员考试试题及答案
- 2025年西部计划笔试试题及答案
- 2025年中小学心理健康教育试卷及答案
- 2025年杭州萧山国际机场控制区通行证考试题库及答案
- (2025)预防艾梅乙母婴传播项目培训测试试题(附答案)
- 气瓶检验员考试题库
- AAMA2605-铝窗(板)更高标准有机喷涂的非官方标准、性能要求、测试程序
- 第一章三国演义讲义课件
- 联合国可持续发展目标
- 西语国家概况
- GB/T 5271.29-2006信息技术词汇第29部分:人工智能语音识别与合成
- GB/T 28248-2012印制板用硬质合金钻头
- 淄博市2020年度专业技术人员继续教育公需课考试题及答案
- 大运河前世今生课件
- 省级自然保护区建设工程可行性研究报告
- 义务教育阶段学生艺术素质测评指标体系小学音乐
评论
0/150
提交评论