第7章数据库高级对象的使用;本章要点;一、视图;可以通过CREATEVIEW语句来创建视图,其基本语法如下:
CREATEVIEW视图名[(视图字段列表)]
AS查询语句
[WITHCHECKOPTION];
其中,WITHCHECKOPTION强制针对视图执行的所有数据修改语句都必须符合在“查询语句”中设置的条件。通过视图修改行时,WITHCHECKOPTION可确保提交修改后,仍可通过视图看到数据。视图字段列表如果省略,将使用查询语句返回的字段名。查询语句返回的字段必须有字段名且唯一。;【例7-1】已知学生表student的数据如图所示。;可以通过视图修改数据,如:
UPDATEvw_dept1SETbirthday=2007-8-12WHEREsno=2023019001
由于视图只是一个查询,并不保存数据,所以对视图数据的修改其实是对基表数据的修改。;在创建视图时可以加一个“WITHCHECKOPTION”选项,这样对视图修改时,必须满足视图创建时SELECT语句中的WHERE条件。;【例7-2】显示购物者的名字、所订购的玩具的名字和订购数量
CREATEVIEWvwOrders
AS
SELECTShopper.vShopperName,vToyName,siQtyFROMShopper
JOINOrdersONShopper.cShopperId=Orders.cShopperId
JOINOrderDetailONOrders.cOrderNo=OrderDetail.cOrderNo
JOINToysONOrderDetail.cToyId=Toys.cToyId;【例7-3】显示购物者的名字、所订购的玩具的名字和订购数量,以中文显示字段名,语句如下:
CREATEVIEWv_wOrders(购物者名字,玩具名字,订购数量)
WITHENCRYPTION
AS
SELECTShopper.vFirstName,vToyName,siQtyFROMShopperJOINOrders
ONShopper.cShopperId=Orders.cShopperId
JOINOrderDetail
ONOrders.cOrderNo=OrderDetail.cOrderNo
JOINToysONOrderDetail.cToyId=Toys.cToyId;通过视图管理数据,应该注意以下情况:
如果修改将影响多个基本表,则不能在视图中一次性修改多个基表的数据,否则可以。
不能修改那些内容为计算结果的列,例如,一个经过计算的列或一个集合函数。
视图引用多个表时,无法用DELETE命令删除数据。
确认那些不包括在视图列中但属于表的列,是否允许NULL值或有缺省值的情况。;【例7-5】vwOrderWrapper视图定义如下:
CREATEVIEWvwOrderWrapper
AS
SELECTcOrderNo,cToyId,siQty,vDescription,mWrapperRate
FROMOrderDetailJOINWrapper
ONOrderDetail.cWrapperId=Wrapper.cWrapperId
要通过视图更新siQty和mWrapperRate时,使用
UPDATEvwOrderWrapperSETsiQty=2,mWrapperRate=mWrapperRate+1WHEREcOrderNo=000001
命令系统会出错,因为siQty和mWrapperRate分别属于OrderDetail和Wrapper表中,不能同时修改多个基本表。
必须修改为:
UpdatevwOrderWrapperSETsiQty=2WHEREcOrderNo=000001;
UpdatevwOrderWrapperSETmWrapperRate=mWrapperRate+1WHEREcOrderNo=000001;;视图的优点:
1.视点集中
用户只关心它感兴趣的某些特定数据和他们所负责的特定任务。
2.简化操作
视图大大简化了用户对数据的操作。因为在定义视图时,若视图本身就是一个复杂查询的结果集,这样在每一次执行相同的查询时,不必重新写这些复杂的查询语句,只要一条简单的查询视图语句即可。可见视图向用户隐藏了表与表之间的复杂的连接操作。
3.定制数据
视图能够实现让不同的用户以不同的方式看到不同或相同的数据集。因此,当有许多不同水平的用户共用
您可能关注的文档
- 《数据库原理及应用(第二版)》课件 第1章 数据库概论.pptx
- 《数据库原理及应用(第二版)》课件 第2章 关系数据库理论基础.pptx
- 《数据库原理及应用(第二版)》课件 第3章 SQL Server 2022的使用.pptx
- 《数据库原理及应用(第二版)》课件 第4章 MySQL8.0的使用.pptx
- 《数据库原理及应用(第二版)》课件 第5章 SQL语言.pptx
- 《数据库原理及应用(第二版)》课件 第6章 数据库设计和建模工具.pptx
- 《数据库原理及应用(第二版)》课件 第8章 数据库系统的安全.pptx
- 《数据库原理及应用(第二版)》课件 第9章 数据库备份还原和日志管理.pptx
- 《数据库原理及应用(第二版)》课件全套 盛志伟 第1--9章 数据库概论---数据库备份还原和日志管理.pptx
- 2026及未来5年中国小黄花行业发展研究报告.docx
- 2026年及未来5年内中国PE注塑异径三通行业投资前景及策略咨询研究报告.docx
- 2026年中国高真空泵市场调查研究报告.docx
- 2026年中国薄板拉伸油压机市场调查研究报告.docx
- 2026年中国氟化羟胺市场调查研究报告.docx
- 2026及未来5年中国多功能农用大棚膜行业发展研究报告.docx
- 2026及未来5年中国邻甲基苯乙酸行业发展研究报告.docx
- 2026年及未来5年内中国橡胶磨头行业投资前景及策略咨询研究报告.docx
- 2026年及未来5年内中国回转输送机行业投资前景及策略咨询研究报告.docx
- 2026及未来5年中国车架标记机市场分析及竞争策略研究报告.docx
- 2026及未来5年中国滑阀式双电控两位三通电磁阀市场分析及竞争策略研究报告.docx
最近下载
- (最新)ISO 55013-2024 资产管理-数据资产管理指南(中文版-翻译-2024)(推荐下载).pdf VIP
- (QC小组活动专业能力)中级质量专业能力考试题库及答案.docx VIP
- 固体物理第一章晶体结构.pptx VIP
- 聚集性事件、药品群体不良事件调查处置标准操作规程.docx VIP
- DB52T 1692-2022 水利工程标识标牌技术规范.pdf VIP
- 2026年qc诊断师中级考试题库及答案.docx VIP
- 北航机械设计课程设计设计计算说明书.docx VIP
- (项目部)应急预案演练总结及评估报告.docx VIP
- 最新领军人才项目申报答辩汇报PPT模板.pptx VIP
- 2025年增资协议中英.doc
原创力文档

文档评论(0)