习题五参考答案.doc

上传人(卖家):四川天地人教育 文档编号:1863527 上传时间:2021-11-12 格式:DOC 页数:4 大小:79KB
下载 相关 举报
习题五参考答案.doc_第1页
第1页 / 共4页
习题五参考答案.doc_第2页
第2页 / 共4页
习题五参考答案.doc_第3页
第3页 / 共4页
习题五参考答案.doc_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

1、1.以图 3-6的数据库为例 (可参照图5-1,该数据库的实例) ,用关系代数完成以下检 索:(注意:此处暂以*表示连接运算符。) 1)检索在仓库 WH2 工作的职工的工资。 职工号,工资( 仓库号=WH2(职工) 2)检索在上海工作的职工的工资。 职工号,工资( 城市=上海(仓库)* 职工) 3)检索北京的供应商的名称。 供应商名( 地址=北京(供应商) 4)检索目前与职工 E6 有业务联系的供应商的名称。 供应商名( 职工号=E6(订购单)* 供应商) 5)检索所有职工的工资都大于1220元的仓库所在的城市。 城市(仓库) - 城市( 工资=1220(职工)* 仓库) 6)检索和北京的所有

2、供应商都有业务联系的职工的工资。 职工号,工资(职工 * (订购单 供应商号( 地址=北京(供应 商) 7)检索至少和职工 E1、E4、E7 都有联系的供应商的名称。 供应商名(订购单 (“ E1” ,” E4” ,” E7” ) * 供应商) 习题五 1.试概述 SQL 语言的功能。 SQL 是一种一体化的语言,它包括了数据定义、数据查询、数据操纵和数据控制等方 面的功能,它可以完成数据库活动中的全部工作。 2.以图 5-1 的数据库为例,用SQL 完成以下检索: 1)检索在北京的供应商的名称。 SELECT * FROM供应商WHERE 地址=?北京? 2)检索发给供应商S6 的订购单号。

3、 SELECT 订购单号FROM 订购单WHERE供应商号 =?S6? 3)检索出职工E6发给供应商S6的订购单信息。 SELECT * FROM订购单WHERE 供应商号 =?S6?AND 职工号 =?E6? 4)检索出向供应商S3 发过订购单的职工的职工号和仓库号。 SELECT 职工号 ,仓库号FROM 职工WHERE 职工号IN (SELECT 职工号FROM 订购单WHERE供应商号 =?S3?) 5)检索出目前与S3供应商没有联系的职工信息。 SELECT * FROM职工WHERE 职工号NOT IN (SELECT 职工号FROM 订购单WHERE供应商号 =?S3?) 6)检

4、索出目前没有任何订购单的供应商信息。 SELECT * FROM供应商WHERE NOT EXISTS (SELECT * FROM订购单WHERE 供应商号 =供应商 .供应商号) 7)检索出和职工E1、 E3都有联系的北京的供应商信息。 SELECT * FROM供应商WHERE 地址=?北京? and 供应商号IN (SELECT 供应商号FROM 订购单WHERE职工号 =?E1?) AND供应商号IN (SELECT 供应商号FROM 订购单WHERE职工号 =?E3?) 8)检索出目前和华通电子公司有业务联系的每个职工的工资。 SELECT 职工号 ,工资FROM 职工WHERE

5、职工号IN (SELECT 职工号FROM 订购单WHERE供应商号IN (SELECT 供应商号FROM 供应商WHERE 供应商名 =?华通电子公司 ?) 9)检索出与工资在1220 元以下的职工没有联系的供应商的名称。 SELECT 供应商名FROM 供应商WHERE供应商号IN (SELECT 供应商号FROM 订购单WHERE 职工号NOT IN (SELECT 职工号FROM 职工WHERE 工资1230) AND供应商号IN (SELECT 供应商号FROM 供应商WHERE 地址=?北京?) 14) 检索出仓库的个数。 SELECT COUNT(*) FROM仓库 15) 检索

6、出有最大面积的仓库信息。 SELECT * FROM仓库WHERE 面积 =(SELECT MAX( 面积) FROM仓库) 16) 检索出所有仓库的平均面积。 SELECT AVG(面积)FROM 仓库 17) 检索出向S4供应商发出订购单的那些仓库的平均面积。 SELECT AVG(面积)FROM 仓库WHERE仓库号IN (SELECT 仓库号FROM 职工WHERE 职工号IN (SELECT 职工号FROM 订购单WHERE 供应商号 =?S4?) 18) 检索出每个城市的供应商个数。 SELECT 地址,COUNT(*)FROM供应商GROUP BY地址 19) 检索出每个仓库中工

7、资多于1220 元的职工个数。 SELECT 仓库号 ,COUNT(*)FROM职工WHERE工资1220 GROUPBY仓库号 20) 检索出和面积最小的仓库有联系的供应商的个数。 SELECT COUNT(*) FROM供应商WHERE供应商号IN (SELECT 供应商号FROM 订购单WHERE 职工号IN (SELECT 职工号FROM 职工WHERE 仓库号IN (SELECT 仓库号FROM 仓库WHERE 面积= (SELECT MIN( 面积) FROM 仓库) 21) 检索出工资低于本仓库平均工资的职工信息。 SELECT * FROM职工out WHERE工资 (SELE

8、CT AVG( 工资) FROM 职工inne WHERE仓库号 =out.仓库号 ) 3.试述关系数据库中视图(View)的含义和作用。 在关系数据库中,视图也称作窗口,即视图是操作基本表的窗口。在三层数据库体系结 构中,视图是外部数据库,它是从基本表中派生出来的并依赖于基本表,它并不独立存在。 利用视图一方面可以限定对数据的访问(对数据列起到安全保护的作用),另一方面又 可以简化对数据的访问(用户可以直接通过视图访问数据库)。除此之外,从三层数据库体 系结构的角度它还提供了概念数据独立性。 4.以图 5-1 的数据库为例,用SQL 语句完成以下更新操作,并讨论数据完整性约束 对这些操作的影

9、响: 1)插入一个新的供应商元组(S9,智通公司,沈阳) 。 INSERT INTO供应商VALUES( ,S9?,?智通公司 ?,?沈阳?) 2)删除目前没有任何订购单的供应商。 DELETE FROM供应商WHERE供应商号NOT IN (SELECT 供应商号FROM 订购单 ) 3)删除由在上海仓库工作的职工发出的所有订购单。 DELETE FROM订购单WHERE职工号IN (SELECT 职工号FROM 职工WHERE 仓库号IN (SELECT 仓库号FROM 仓库WHERE 城市=?上海?) 2 4)北京的所有仓库增加100m 的面积。 UPDATE 仓库SET 面积=面积+1

10、00 WHERE城市=?北京? 5)给低于所有职工平均工资的职工提高5%的工资。 UPDATE 职工SET 工资=工资*1.05 WHERE工资 (SELECT AVG( 工资) FROM 职工 ) 5.SQL 要嵌入到宿主语言中使用要解决哪几方面的问题? 把 SQL 嵌入到宿主语言中使用必须要解决以下三个方面的问题: 1) 嵌入识别问题。 宿主语言的编译程序不能识别SQL 语句, 所以首要的问题就是要解 决如何区分宿主语言的语句和SQL 语句。 2) 宿主语言与SQL 语言的数据交互问题。SQL 语句的查询结果必须能够交给宿主语言 处理,宿主语言的数据也要能够交给SQL 语句使用。 3) 宿

11、主语言的单记录与SQL 的多记录的问题。宿主语言一般一次处理一条记录,而 SQL 常常处理的是记录(元组)的集合,这个矛盾必须解决。 6.试述预编译的作用。 宿主语言的编译系统不能识别SQL 语句。 解决这个问题的一般方法是,为 SQL 语句加 一个特殊的前缀,在用宿主语言的编译系统编译源程序之前,首先由预编译系统将SQL 语 句转换为宿主语言的合法函数调用。 7.试述游标( Cursor)的作用,并解释实现此功能的诸条语句的用途。 宿主语言一般只能在单记录方式下工作,即一次处理一个记录。而SQL 语句的查询结 果常常是一张表, 它包含多个记录, 为此需要用游标 (CURSOR)作为桥梁做一些特殊处理, 即利用游标来临时存放SQL 语句的查询结果,并利用游标与宿主语言的主变量进行数据交 互。与游标有关的命令共有四条:DECLARECURSOR、OPEN、FETCH 和 CLOSE。其 中 DECLARE CURSOR用 SQL SELECT 语句说明一个游标;OPEN 打开游标,即执行说明 游标的 SQL SELECT 语句; FETCH 从游表中读一条记录到主变量;CLOSE 关闭游标。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 办公、行业 > 待归类文档
版权提示 | 免责声明

1,本文(习题五参考答案.doc)为本站会员(四川天地人教育)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|