ImageVerifierCode 换一换
格式:DOCX , 页数:48 ,大小:52.32KB ,
资源ID:13458983      下载积分:5 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-13458983.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(《数据库系统及应用》习题解答.docx)为本站会员(b****6)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

《数据库系统及应用》习题解答.docx

1、数据库系统及应用习题解答数据库系统及应用习题解答 作者: 日期: 数据库系统及应用(第二版)习题解答习题一1.什么是数据库?数据库是相互关联的数据的集合,它用综合的方法组织数据,具有较小的数据冗余,可供多个用户共享,具有较高的数据独立性,具有安全控制机制,能够保证数据的安全、可靠,允许并发地使用数据库,能有效、及时地处理数据,并能保证数据的一致性和完整性.2.简要概述数据库、数据库管理系统和数据库系统各自的含义。数据库、数据库管理系统和数据库系统是三个不同的概念,数据库强调的是相互关联的数据,数据库管理系统是管理数据库的系统软件,而数据库系统强调的是基于数据库的计算机应用系统。3.数据独立性的

2、含义是什么?数据独立性是指数据的组织和存储方法与应用程序互不依赖、彼此独立的特性。这种特性使数据的组织和存储方法与应用程序互不依赖,从而大大降低应用程序的开发代价和维护代价.4.数据完整性的含义是什么?保证数据正确的特性在数据库中称之为数据完整性.5.简要概述数据库管理员的职责。数据库管理员的职责可以概括如下:(1)首先在数据库规划阶段要参与选择和评价与数据库有关的计算机软件和硬件,要与数据库用户共同确定数据库系统的目标和数据库应用需求,要确定数据库的开发计划;(2)在数据库设计阶段要负责数据库标准的制定和共用数据字典的研制,要负责各级数据库模式的设计,负责数据库安全、可靠方面的设计;(3)在

3、数据库运行阶段首先要负责对用户进行数据库方面的培训;负责数据库的转储和恢复;负责对数据库中的数据进行维护;负责监视数据库的性能,并调整、改善数据库的性能,提高系统的效率;继续负责数据库安全系统的管理;在运行过程中发现问题、解决问题。6.文件系统用于数据管理存在哪些明显的缺陷?文件系统用于数据管理明显存在如下缺陷:(1)数据冗余大。这是因为每个文件都是为特定的用途设计的,因此就会造成同样的数据在多个文件中重复存储。(2)数据不一致性。这往往是由数据冗余造成的,在进行更新时,稍不谨慎就会造成同一数据在不同文件中的不一致.(3)程序和数据之间的独立性差.应用程序依赖于文件的存储结构,使得若修改文件的

4、存储结构则必须修改程序。(4)数据联系弱。文件与文件之间是独立的,文件之间的联系必须通过程序来构造.因此,文件系统是一个不具有弹性的、无结构的数据集合,不能反映现实世界事物之间的联系。习题二1.数据的三种范畴的含义是什么?数据需要我们的认识、理解、整理、规范和加工,然后才能存放到数据库中。数据从现实生活进入到数据库实际经历了现实世界阶段(认识、理解)、信息世界阶段(规范、提升)和机器世界阶段(管理),我们也把之称为数据的三种范畴,数据在三种范畴中的概念、术语都有些不同.2.对以下问题分析实体之间的联系,并分别画出ER图:工程师和工程项目1)实体之间的联系:设每名工程师可以参加多个工程项目,每个

5、工程项目可以由多名工程师工作,则二者属于多对多的关系,2)则ER图如下:工程项目项目号金额项目名工程师工程师号号列车号职称姓名参加Mn工程师号项目号参加天数乘务员和火车1)实体之间的联系:设每辆火车上可以有多个乘务员工作,每名乘务员只可以在一列火车上工作,则二者属于一对多的关系,2)则E-R图如下:火车列车号号列车号生产厂家列车名乘务员乘务员号工资姓名工作1n列车号乘务员号职位公司和产品类型1)实体之间的联系:设每个公司可以生产多种产品类型,每种产品类型可以由多家公司生产,则二者属于多对多的关系,2)则ER图如下:公司公司编号负责人公司名产品类型类型ID类型名生产MN公司号类型ID投产年份维修

6、工和机器1)实体之间的联系:设每个维修工可以维修多台机器,每台机器需要由多名维修工修理,则二者属于多对多的关系,2)则ER图如下:维修工维修工号时薪姓名机器机器ID机器价机器名修理MN维修工号机器ID维修工时投资者和股票1)实体之间的联系:设每个投资者可以持有多只股票,每只股票可以由多名投资者持有,则二者属于多对多的关系,2)则E-R图如下:投资者投资者号帐号余额姓名股票股票号股票价股票名持有MN投资者号股票号数量3.试述为什么要讨论实体之间的联系类型?实体之间的联系类型决定了数据库设计时的结果,与数据库的设计质量密切相关。4.多对多联系如何转换成一对多联系?并举例说明。通过引入一个表示联系的

7、实体,将原来两个实体之间的一个多对多的联系转换成分别与表示联系的实体之间的两个一对多的联系。例如,仓库和材料两个实体之间存在着多对多的联系,即一个仓库可以存放多种材料,一种材料可以存放在多个仓库;通过引入一个库存实体转换为仓库与库存之间的一对多联系和材料与库存之间的一对多联系。5.解释连接陷阱的概念,在操作数据库时如何避免连接陷阱?所谓连接陷阱就是误认为本来不存在联系的两个实体之间存在联系,从而强行进行连接操作,自然得到错误的结果。为了避免连接陷阱,必须明确实体之间的联系和联系类型,只在有联系的实体之间进行关联操作。6.传统的三大数据模型是哪些?它们分别是如何表示实体之间的联系的?传统的三大数

8、据模型是层次模型、网状模型和关系模型。层次模型用层次结构表示联系,它的典型代表IMS用层次型表示联系;网状模型用网状结构表示联系,它的典型代表CODASYL用系表示联系;关系模型用关系表示联系。7.解释存储数据独立性和概念数据独立性的区别。存储数据独立性强调的是应用程序与数据的存储结构相互独立的特性,即修改数据的存储方法或数据结构时不影响应用程序;而概念数据独立性强调的是应用程序与数据的概念结构相互独立的特性,即修改概念结构中的字段时不影响应用程序.8.为什么说概念数据库和外部数据库物理上并不真正存在?只有存储数据库是物理上存在的数据库,概念数据库是存储数据库的抽象,它反映了数据库的全局逻辑结

9、构;而外部数据库是概念数据库的部分抽取,它反映了数据库的局部逻辑结构。9.说明在DBMS中存储模式、概念模式和外部模式的作用。存储模式描述了数据库的存储结构,它包括对存储数据库中每个文件以及字段的描述,包括用于实现辅助关键字或存储文件间联系的指针字段的细节。存储数据库利用存储模式组织和存取存储数据库中的文件。如果要修改存储数据库的结构(例如,用倒排文件代替多链表),那么仅仅需要把这些修改反映在存储模式中,以使数据库存储系统能够操作新的存储数据库。按这种方法,数据库管理系统可以提供存储(物理)数据独立性。概念模式是对概念数据库的描述,它包括对概念文件及概念文件之间联系的描述。概念数据库不包含真正

10、的数据,一切都是由存储数据库决定的。外部模式则是对外部数据库的描述,它需要说明外部文件、构成外部文件的字段及这些外部文件之间的联系。数据库管理系统提供了外部模式与概念模式之间的映象以及概念模式与存储模式之间的映象,使用户通过外部数据库或概念数据库来操作存储数据库.习题三1.解释属性与值域的区别。属性是二维表中的列,而值域是列或属性的取值范围。2.关系模型的三个组成部分是什么?关系数据模型包括关系数据结构、关系操作集合和关系完整性约束三个重要因素。3.对关系模型的操作都包括哪些?关系数据模型中的操作包括:(1)传统的集合运算:并(Union)、交(Intersection)、差(Differen

11、ce)、广义笛卡尔积(Extended Cartesian Product);(2)专门的关系运算:选择(Select)、投影(Project)、连接(Join)、除(Divide);(3)有关的数据操作:查询(Query)、插入(Insert)、删除(Delete)、修改(Update)。4.关系模型的完整性规则都有哪些?在关系数据模型中一般将数据完整性分为实体完整性、参照完整性和用户定义完整性。5.试述外部关键字的概念和作用,外部关键字是否允许为空值,为什么?如果一个属性集不是所在关系的关键字,但是是其他关系的关键字,则该属性集称为外部关键字。外部关键字用于实现表与表之间的参照完整性.外部

12、关键字是否允许为空值取决于语义的规定。外部关键字的取值或者为空值、或者为被参照关系中的某个关键字字段的值.6.分别叙述在进行插入、删除、更新操作时都需要进行哪些完整性检查,并说明理由。(1)执行插入操作时需要分别检查实体完整性规则、参照完整性规则和用户定义完整性规则.首先检查实体完整性规则,如果插入元组的主关键字的属性不为空值、并且相应的属性值在关系中不存在(即保持唯一性),则可以执行插入操作,否则不可以执行插入操作。接着再检查参照完整性规则,如果是向被参照关系插入元组,则无须检查参照完整性;如果是向参照关系插入元组,则要检查外部关键字属性上的值是否在被参照关系中存在对应的主关键字的值,如果存

13、在则可以执行插入操作,否则不允许执行插入操作.另外,如果插入元组的外部关键字允许为空值,则当外部关键字是空值时也允许执行插入操作.最后检查用户定义完整性规则,如果插入的元组在相应的属性值上遵守了用户定义完整性规则,则可以执行插入操作,否则不可以执行插入操作。(2)执行删除操作时一般只需要检查参照完整性规则。如果删除的是参照关系的元组,则不需要进行参照完整性检查,可以执行删除操作。如果删除的是被参照关系的元组,则检查被删除元组的主关键字属性的值是否被参照关系中某个元组的外部关键字引用,如果未被引用则可以执行删除操作;否则可能有三种情况:1)不可以执行删除操作,即拒绝删除;2)可以删除,但需同时将

14、参照关系中引用了该元组的对应元组一起删除,即执行级联删除;3)可以删除,但需同时将参照关系中引用了该元组的对应元组的外部关键字置为空值,即空值删除。(3)执行更新操作可以看作是先删除旧的元组,然后再插入新的元组。所以执行更新操作时的完整性检查综合了上述两种情况。7.试述关系的自然连接和等值连接的异同之处。自然连接和等值连接都是基于相等比较运算的连接,但是自然连接要去掉重复的属性,而等值连接却不需要去掉重复的属性。8.以图36的数据库为例(可参照图5-1,该数据库的实例),用关系代数完成以下检索:注意:此处暂以 表示连接运算符。1)检索在仓库WH2工作的职工的工资。职工号,工资(仓库号=WH2(

15、职工)2)检索在上海工作的职工的工资。职工号,工资(城市=上海(仓库) * 职工)3)检索北京的供应商的名称.供应商名(地址=北京(供应商))4)检索目前与职工E6有业务联系的供应商的名称.供应商名(职工号=E6”(订购单) 供应商)5)检索所有职工的工资都大于1220元的仓库所在的城市。城市(仓库) -城市(工资=1220(职工) * 仓库)命题“所有职工的工资都大于1220元的仓库”的逆命题是:“有职工工资不大于1220的仓库”故本题可以换一个说法:求“在所有仓库中除去有职工工资不大于1220的仓库”所在城市课本P116例5。36,例5。37均讨论类似问题6)检索和北京的所有供应商都有业务

16、联系的职工的工资。职工号,工资(职工 * (订购单供应商号(地址=北京”(供应商))))7)检索至少和职工E1、E4、E7都有联系的供应商的名称。供应商名(订购单(“E1,E4”,”E7”) * 供应商)9.试述关系数据库系统的三层模式结构。略习题四1.简述客户/服务器结构的概念,并说明客户/服务器结构与文件服务器网络结构的区别。客户/服务器结构的基本思想是应用程序或应用逻辑可以根据需要划分在服务器和客户工作站中,它既不像集中式系统那样所有的应用程序都在主机上执行,也不像文件服务器网络那样所有的应用程序都在客户端执行,它可以使应用程序合理负担在服务器和客户端。客户/服务器结构与文件服务器网络结

17、构的硬件拓扑结构很相似,它们的根本区别在于:客户/服务器结构的服务器可以执行应用程序;而文件服务器的服务器只是一个数据共享器,它不能执行应用程序.2.在客户/服务器结构中,数据库服务器和客户端计算机是如何分工的?数据库服务器应完成数据管理、信息共享、安全管理、以及一些更高级的管理。它是一个开放的体系结构,可以接受来自各种应用程序和开发工具的客户端的连接;它除了要管理集中的数据库之外,还要处理来自客户端的数据访问请求和将结果反馈给用户(包括管理请求队列、管理缓存、响应服务、管理结果和通知服务完成等)的工作。而客户端计算机是面向最终用户的,所以它的主要任务是提供友好的用户界面,提交数据访问请求以及

18、接收和处理数据库的返回结果,组织返回数据的输出(如生成数据浏览窗口、生成数据报表和图形等),提供初步的数据验证功能等.3.SQL Server在安装后默认创建了哪几个系统数据库?分别叙述它们的作用。SQL Server在安装后默认创建了4系统数据库,它们是:(1)master数据库。master数据库用于存储SQL Server系统的所有系统级信息,包括所有的其它数据库(如建立的用户数据库)的信息(包括数据库的设置、对应的操作系统文件名称和位置等)、所有数据库注册用户的信息以及系统配置设置等.(2)tempdb数据库。tempdb数据库用于保存所有的临时表和临时存储过程,它还可以满足任何其它的

19、临时存储要求。(3)model 数据库。model数据库是一个模板数据库,当使用CREATE DATABASE命令建立新的数据库时,新数据库的第一部分总是通过复制model数据库中的内容创建,剩余部分由空页填充。(4)msdb数据库。msdb数据库用于SQL Server代理程序调度报警和作业等系统操作.4.试述SQL Server的CREATE DATABASE命令在创建数据库时是如何申请物理存储空间的?通过指定的物理文件名、文件的大小等向操作系统申请物理存储空间。5.试述SQL Server企业管理器的功能.略。习题五1.试概述SQL语言的功能。SQL是一种一体化的语言,它包括了数据定义、

20、数据查询、数据操纵和数据控制等方面的功能,它可以完成数据库活动中的全部工作。2.以图51的数据库为例,用SQL完成以下检索: 1)检索在北京的供应商的名称。SELECT 供应商名 FROM 供应商 WHERE 地址=北京2)检索发给供应商S6的订购单号。SELECT 订购单号 FROM 订购单 WHERE 供应商号=S63)检索出职工E6发给供应商S6的订购单信息。SELECT * FROM 订购单 WHERE 供应商号=S6 AND 职工号=E64)检索出向供应商S3发过订购单的职工的职工号和仓库号.SELECT 职工号,仓库号 FROM 职工 WHERE 职工号 IN( SELECT 职工

21、号 FROM 订购单 WHERE 供应商号=S3 )5)检索出目前与S3供应商没有联系的职工信息。SELECT FROM 职工 WHERE 职工号 NOT IN( SELECT 职工号 FROM 订购单 WHERE 供应商号=S3 )错:SELECT * FROM 职工 WHERE 职工号 IN( SELECT 职工号 FROM 订购单 WHERE 供应商号!=S3 )6)检索出目前没有任何订购单的供应商信息。SELECT * FROM 供应商 WHERE NOT EXISTS( SELECT FROM 订购单 WHERE 供应商号=供应商.供应商号 )或:SELECT FROM 供应商 WH

22、ERE 供应商号 not in ( SELECT供应商号FROM 订购单)7)检索出和职工E1、E3都有联系的北京的供应商信息。SELECT * FROM 供应商 WHERE 地址=北京And 供应商号 IN( SELECT 供应商号 FROM 订购单 WHERE 职工号=E1 )AND 供应商号 IN( SELECT 供应商号 FROM 订购单 WHERE 职工号=E3 )错:SELECT FROM 供应商 WHERE 地址=北京And 供应商号 IN( SELECT 供应商号 FROM 订购单 WHERE 职工号=E1 and职工号=E3 )8)检索出目前和华通电子公司有业务联系的每个职工

23、的工资。SELECT 职工号,工资 FROM 职工 WHERE 职工号 IN(SELECT 职工号 FROM 订购单 WHERE 供应商号 IN(SELECT 供应商号 FROM 供应商 WHERE 供应商名=华通电子公司)9)检索出与工资在1220元以下的职工没有联系的供应商的名称。select distinct 供应商名,供应商号from 供应商where 供应商号 not in -(s4,s7)-该供应商无与E3的订单 (select distinct 供应商号 from 订购单 where 供应商号 is not null and 职工号 in (select 职工号 职工工资低于12

24、20职工号,只有E3 from 职工 where 工资1220) ) 该供应商有下过订单 and 供应商号 in (select distinct 供应商号 from 订购单)最内层查询的结果为:工资低于1220的职工号中间层查询的结果为:由工资低于1220的职工经手的订购单的供应商号最外层查询的结果为:与工资低于1220的职工没有联系的供应商号、供应商名 (除掉与工资低于1220的职工有联系的供应商号)进一步讨论:如果把not从最外层移到中间层,变成以下命令,则结果是不对的,讨论如下:select distinct 供应商名,供应商号from 供应商where 供应商号 in -(s4,s7

25、)-该供应商无与E3的订单 (select distinct 供应商号 from 订购单 where 供应商号 is not null and 职工号 not in (select 职工号 -职工工资低于1220职工号,只有E3 from 职工 where 工资1220) )最内层查询的结果为:工资低于1220的职工号中间层查询的结果为:不是由工资低于1220的职工经手的订购单的供应商号 注意:若一个供应商有两张以上的订购单,其中一张由工资 低于1220的职工经手,至少一张由不低于1220的职工 经手,则该供应商号出现在中间层的结果集中,但该 供应商号却不是所要的结果,如课本P98数据中的S4

26、最外层查询的结果为:与工资低于1220的职工没有联系的供应商号、供应商名 (除掉与工资低于1220的职工有联系的供应商号)10)检索出向S4供应商发出订购单的仓库所在的城市。SELECT 城市 FROM 仓库 WHERE 仓库号 IN(SELECT 仓库号 FROM 职工 WHERE 职工号 IN(SELECT 职工号 FROM 订购单 WHERE 供应商号=S4))11)检索出在上海工作并且向S6供应商发出了订购单的职工号。SELECT 职工号 FROM 职工 WHERE 仓库号 IN(SELECT 仓库号 FROM 仓库 WHERE 城市=上海) AND 职工号 IN(SELECT 职工号

27、 FROM 订购单 WHERE 供应商号=S6)12)检索出在广州工作并且只向S6供应商发出了订购单的职工号。SELECT 职工号 FROM 职工 WHERE 仓库号 IN(SELECT 仓库号 FROM 仓库 WHERE 城市=广州) AND 职工号 IN(SELECT 职工号 FROM 订购单 WHERE 供应商号=S6) AND 职工号 NOT IN(SELECT 职工号 FROM 订购单 WHERE 供应商号!=S6)13)检索出由工资多于1230元的职工向北京的供应商发出的订购单号。SELECT 订购单号 FROM 订购单WHERE 职工号 IN(SELECT 职工号 FROM 职工

28、 WHERE 工资1230) AND 供应商号 IN(SELECT 供应商号 FROM 供应商 WHERE 地址=北京)14)检索出仓库的个数. SELECT COUNT() FROM 仓库15)检索出有最大面积的仓库信息。SELECT * FROM 仓库 WHERE 面积=(SELECT MAX(面积) FROM 仓库)16)检索出所有仓库的平均面积. SELECT AVG(面积) FROM 仓库按城市算仓库面积: SELECT 城市,AVG(面积) FROM 仓库Group by城市17)检索出向S4供应商发出订购单的那些仓库的平均面积。SELECT AVG(面积) FROM 仓库 WHE

29、RE 仓库号 IN(SELECT 仓库号 FROM 职工 WHERE 职工号 IN(SELECT 职工号 FROM 订购单 WHERE 供应商号=S4))18)检索出每个城市的供应商个数. SELECT 地址,COUNT(*) FROM 供应商 GROUP BY 地址19)检索出每个仓库中工资多于1220元的职工个数. SELECT 仓库号,COUNT() FROM 职工 WHERE 工资1220 GROUP BY 仓库号存在问题:WH4无职工,应在结果显示0改进:SELECT 仓库号,人数=(select COUNT(职工号) from 职工 where 仓库。仓库号=职工.仓库号 and

30、工资1220) FROM 仓库20)检索出和面积最小的仓库有联系的供应商的个数。SELECT COUNT(distinct 供应商号) FROM 订购单 WHERE 职工号 IN(SELECT 职工号 FROM 职工 WHERE 仓库号 IN(SELECT 仓库号 FROM 仓库 WHERE 面积=(SELECT MIN(面积) FROM 仓库))-另一个写法:SELECT COUNT() FROM 供应商 WHERE 供应商号 IN(SELECT 供应商号 FROM 订购单 WHERE 职工号 IN(SELECT 职工号 FROM 职工 WHERE 仓库号 IN(SELECT 仓库号 FROM 仓库 WHERE 面积=(SELECT MIN(面积) FROM 仓库))21)检索

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2