收藏 分销(赏)

数据库原理与应用 (嵌套查询、数据更新和视图).doc

上传人:xrp****65 文档编号:8720269 上传时间:2025-02-27 格式:DOC 页数:4 大小:54KB 下载积分:10 金币
下载 相关 举报
数据库原理与应用 (嵌套查询、数据更新和视图).doc_第1页
第1页 / 共4页
数据库原理与应用 (嵌套查询、数据更新和视图).doc_第2页
第2页 / 共4页


点击查看更多>>
资源描述
《数据库原理与应用》实验报告 题目:实验五:嵌套查询、数据更新和视图 学号:1148028 姓名:沈宇杰 日期:2013/5/13 实验预习情况: 实验目的: ①:掌握SQL语言的核心语句—SELECT语句的使用,具体为在SQL Server 2008环境下采用Transact-SQL实现嵌套查询 ②:掌握采用Transact-SQL实现数据更新 ③:掌握采用Transact-SQL实现视图的定义、删除、查询与更新。 实验内容与要求: 按照《数据库系统概论》(第四版)P82及P75中的关系模式及数据,详细的实验事例请参照实验四,完成以下实验。 实验内容与完成情况: 嵌套查询: ①:查询其他系中比计算机系所有学生年龄都小的学生姓名与年龄,请用两种方法实现 法一: SELECT Sname 姓名,Sage 年龄 FROM Student WHERE Sage < ALL ( SELECT Sage FROM Student WHERE Sdept = 'CS' ) AND Sdept <> 'CS' 法二: SELECT Sname 姓名,Sage 年龄 FROM Student WHERE Sage < ( SELECT MIN(Sage) FROM Student WHERE Sdept = 'CS' ) AND Sdept <> 'CS' ②:查询其他系中比计算机科学系某一学生年龄大的学生姓名与年龄,请用两种方法实现 法一: SELECT Sname 姓名,Sage 年龄 FROM Student WHERE Sage > ANY ( SELECT Sage FROM Student WHERE Sdept = 'CS' ) AND Sdept <> 'CS' 法二: SELECT Sname 姓名,Sage 年龄 FROM Student WHERE Sage > ( SELECT MAX(Sage) FROM Student WHERE Sdept = 'CS' ) AND Sdept <> 'CS' ③:查询供应工程 J1 红色零件的供应商号SNO,请用三种方法实现 法一: SELECT SNO 供应商号 FROM SPJ WHERE PNO IN ( SELECT PNO FROM P WHERE COLOR = '红' ) AND JNO = 'J1' 法二: SELECT SNO FROM P,SPJ WHERE SPJ.PNO = P.PNO AND COLOR = '红' AND JNO = 'J1' 法三: SELECT SNO FROM SPJ WHERE EXISTS ( SELECT * FROM P WHERE PNO = SPJ.PNO AND SPJ.JNO = 'J1' AND COLOR = '红' ) ④:查询至少用了供应商S1所提供的全部零件的工程号JNO,要求用带EXISTS谓词的子查询实现。 SELECT DISTINCT JNO FROM SPJ A WHERE NOT EXISTS ( SELECT * FROM SPJ B WHERE B.SNO='S1'AND NOT EXISTS ( SELECT * FROM SPJ C WHERE C.JNO = A.JNO AND C.PNO = B.PNO ) ⑤:查询使用了全部零件的工程号JNO,要求用带EXISTS谓词的子查询实现 SELECT JNO FROM SPJ A WHERE NOT EXISTS ( SELECT * FROM SPJ B WHERE NOT EXISTS ( SELECT * FROM SPJ C WHERE C.JNO=B.JNO AND B.PNO = A.PNO ) ) 数据更新: ①:将所有学号为10的学生姓名改为“王华英” UPDATE Student SET Sname = '王华英' WHERE Sno = '10' ②:将所有“95101”班号改为“95091” UPDATE Student SET Sno = '95091' WHERE Sno = '95101' 视图: 请为三建工程项目建立一个供应情况的视图,包括供应商代码(SNO),零件代码(PNO),供应数量(QTY)。针对该视图完成下列查询: CREATE VIEW IS_SP AS SELECT SNO,PNO,QTY FROM SPJ WHERE JNO = 'J1' ①:找出三建工程项目的各种零件代码及其数量 SELECT PNO 零件代码,QTY 数量 FROM IS_SPJ ②:找出供应商S1的供应情况 SELECT PNO 零件代码,QTY 数量 FROM IS_SPJ WHERE SNO = 'S1' 出现的问题:(正式实验中遇到的问题) 1. 第四题:查询至少用了供应商S1所提供的全部零件的工程号JNO,要求用带EXISTS谓词的子查询实现。出现结果为J4,但是J4的零件不是由S1提供的,产生错误。还是说只要用了P1,P2两种零件即可。理解问题。 解决方案(列出遇到的问题和解决办法,列出没有解决的问题): 1.
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 教育专区 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服