欢迎来到冰豆网! | 帮助中心 分享价值,成长自我!
冰豆网
全部分类
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • 党团工作>
  • ImageVerifierCode 换一换
    首页 冰豆网 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    数据库系统及应用课后练习答案文档格式.docx

    • 资源ID:18003517       资源大小:37.81KB        全文页数:27页
    • 资源格式: DOCX        下载积分:12金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要12金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    数据库系统及应用课后练习答案文档格式.docx

    1、因此,文件系统是一个不具有弹性的、无结构的数据集合,不能反映现实世界事物之间的联系。习题二1. 数据的三种范畴的含义是什么?数据需要我们的认识、理解、整理、规范和加工,然后才能存放到数据库中。数据从现实生活进入到数据库实际经历了现实世界阶段(认识、理解)、信息世界阶段(规范、提升)和机器世界阶段(管理),我们也把之称为数据的三种范畴,数据在三种范畴中的概念、术语都有些不同。2. 对以下问题分析实体之间的联系,并分别画出E-R图:略3. 试述为什么要讨论实体之间的联系类型?实体之间的联系类型决定了数据库设计时的结果,与数据库的设计质量密切相关。4. 多对多联系如何转换成一对多联系?并举例说明。通

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

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

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

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

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

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

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

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

    10、。1) 检索在仓库WH2工作的职工的工资。职工号,工资(仓库号=WH2(职工)2) 检索在上海工作的职工的工资。职工号,工资(城市=上海(仓库) * 职工)3) 检索北京的供应商的名称。供应商名(地址=北京(供应商)4) 检索目前与职工E6有业务联系的供应商的名称。供应商名(职工号=E6(订购单) * 供应商)5) 检索所有职工的工资都大于1220元的仓库所在的城市。城市(仓库) -城市(工资=1220(职工) * 仓库)6) 检索和北京的所有供应商都有业务联系的职工的工资。职工号,工资(职工 * (订购单供应商号(地址=(供应商)7) 检索至少和职工E1、E4、E7都有联系的供应商的名称。供

    11、应商名(订购单(“E1”,”E4”,”E7”) * 供应商)9. 试述关系数据库系统的三层模式结构。习题四1. 简述客户/服务器结构的概念,并说明客户/服务器结构与文件服务器网络结构的区别。客户/服务器结构的基本思想是应用程序或应用逻辑可以根据需要划分在服务器和客户工作站中,它既不像集中式系统那样所有的应用程序都在主机上执行,也不像文件服务器网络那样所有的应用程序都在客户端执行,它可以使应用程序合理负担在服务器和客户端。客户/服务器结构与文件服务器网络结构的硬件拓扑结构很相似,它们的根本区别在于:客户/服务器结构的服务器可以执行应用程序;而文件服务器的服务器只是一个数据共享器,它不能执行应用程

    12、序。2. 在客户/服务器结构中,数据库服务器和客户端计算机是如何分工的?数据库服务器应完成数据管理、信息共享、安全管理、以及一些更高级的管理。它是一个开放的体系结构,可以接受来自各种应用程序和开发工具的客户端的连接;它除了要管理集中的数据库之外,还要处理来自客户端的数据访问请求和将结果反馈给用户(包括管理请求队列、管理缓存、响应服务、管理结果和通知服务完成等)的工作。而客户端计算机是面向最终用户的,所以它的主要任务是提供友好的用户界面,提交数据访问请求以及接收和处理数据库的返回结果,组织返回数据的输出(如生成数据浏览窗口、生成数据报表和图形等),提供初步的数据验证功能等。3. SQL Serv

    13、er在安装后默认创建了哪几个系统数据库?分别叙述它们的作用。SQL Server在安装后默认创建了4系统数据库,它们是:(1) master数据库。master数据库用于存储SQL Server系统的所有系统级信息,包括所有的其它数据库(如建立的用户数据库)的信息(包括数据库的设置、对应的操作系统文件名称和位置等)、所有数据库注册用户的信息以及系统配置设置等。(2) tempdb数据库。tempdb数据库用于保存所有的临时表和临时存储过程,它还可以满足任何其它的临时存储要求。(3) model 数据库。model数据库是一个模板数据库,当使用CREATE DATABASE命令建立新的数据库时,

    14、新数据库的第一部分总是通过复制model数据库中的内容创建,剩余部分由空页填充。(4) msdb数据库。msdb数据库用于SQL Server代理程序调度报警和作业等系统操作。4. 试述SQL Server的CREATE DATABASE命令在创建数据库时是如何申请物理存储空间的?通过指定的物理文件名、文件的大小等向操作系统申请物理存储空间。5. 试述SQL Server企业管理器的功能。略。习题五1. 试概述SQL语言的功能。SQL是一种一体化的语言,它包括了数据定义、数据查询、数据操纵和数据控制等方面的功能,它可以完成数据库活动中的全部工作。2. 以图5-1的数据库为例,用SQL完成以下检

    15、索: 1) 检索在北京的供应商的名称。SELECT * FROM 供应商 WHERE 地址=北京2) 检索发给供应商S6的订购单号。SELECT 订购单号 FROM 订购单 WHERE 供应商号=S63) 检索出职工E6发给供应商S6的订购单信息。SELECT * FROM 订购单 WHERE 供应商号=S6 AND 职工号=E64) 检索出向供应商S3发过订购单的职工的职工号和仓库号。SELECT 职工号,仓库号 FROM 职工 WHERE 职工号 IN( SELECT 职工号 FROM 订购单 WHERE 供应商号=S3 )5) 检索出目前与S3供应商没有联系的职工信息。SELECT *

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

    17、 职工号,工资 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 职工号-该职工工次低于1220,只有E3

    18、from 职工 where 工资1230) AND 供应商号 IN(SELECT 供应商号 FROM 供应商 WHERE 地址=北京14) 检索出仓库的个数。SELECT COUNT(*) FROM 仓库15) 检索出有最大面积的仓库信息。SELECT * FROM 仓库 WHERE 面积=(SELECT MAX(面积) FROM 仓库)16) 检索出所有仓库的平均面积。SELECT AVG(面积) FROM 仓库17) 检索出向S4供应商发出订购单的那些仓库的平均面积。SELECT AVG(面积) FROM 仓库 WHERE 仓库号 IN18) 检索出每个城市的供应商个数。SELECT 地址

    19、,COUNT(*) FROM 供应商 GROUP BY 地址19) 检索出每个仓库中工资多于1220元的职工个数。SELECT 仓库号,COUNT(*) FROM 职工 WHERE 工资1220 GROUP BY 仓库号20) 检索出和面积最小的仓库有联系的供应商的个数。SELECT COUNT(*) FROM 供应商 WHERE 供应商号 IN(SELECT 供应商号 FROM 订购单 WHERE 职工号 IN(SELECT 职工号 FROM 职工 WHERE 仓库号 IN(SELECT 仓库号 FROM 仓库 WHERE 面积=(SELECT MIN(面积) FROM 仓库)21) 检索出

    20、工资低于本仓库平均工资的职工信息。SELECT * FROM 职工 out WHERE 工资(SELECT AVG(工资) FROM 职工 inne WHERE 仓库号=out.仓库号)3. 试述关系数据库中视图(View)的含义和作用。在关系数据库中,视图也称作窗口,即视图是操作基本表的窗口。在三层数据库体系结构中,视图是外部数据库,它是从基本表中派生出来的并依赖于基本表,它并不独立存在。利用视图一方面可以限定对数据的访问(对数据列起到安全保护的作用),另一方面又可以简化对数据的访问(用户可以直接通过视图访问数据库)。除此之外,从三层数据库体系结构的角度它还提供了概念数据独立性。4. 以图5

    21、-1的数据库为例,用SQL语句完成以下更新操作,并讨论数据完整性约束对这些操作的影响:1) 插入一个新的供应商元组(S9,智通公司,沈阳)。INSERT INTO 供应商 VALUES(S9智通公司沈阳2) 删除目前没有任何订购单的供应商。DELETE FROM 供应商 WHERE 供应商号 NOT IN(SELECT 供应商号 FROM 订购单)3) 删除由在上海仓库工作的职工发出的所有订购单。DELETE FROM 订购单 WHERE 职工号 IN4) 北京的所有仓库增加100m2的面积。UPDATE 仓库 SET 面积=面积+100 WHERE 城市=5) 给低于所有职工平均工资的职工提

    22、高5%的工资。UPDATE 职工 SET 工资=工资*1.05 WHERE 工资(SELECT AVG(工资) FROM 职工)5. SQL要嵌入到宿主语言中使用要解决哪几方面的问题?把SQL嵌入到宿主语言中使用必须要解决以下三个方面的问题:1) 嵌入识别问题。宿主语言的编译程序不能识别SQL语句,所以首要的问题就是要解决如何区分宿主语言的语句和SQL语句。2) 宿主语言与SQL语言的数据交互问题。SQL语句的查询结果必须能够交给宿主语言处理,宿主语言的数据也要能够交给SQL语句使用。3) 宿主语言的单记录与SQL的多记录的问题。宿主语言一般一次处理一条记录,而SQL常常处理的是记录(元组)的

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

    24、URSOR、OPEN、FETCH和CLOSE。其中DECLARE CURSOR用SQL SELECT语句说明一个游标;OPEN打开游标,即执行说明游标的SQL SELECT语句;FETCH从游表中读一条记录到主变量;CLOSE关闭游标。8. 试述为什么需要动态SQL语句,分析游标和动态游标的区别。有时候在编程序时SQL语句或语句的参数和格式不能确定,应用程序只能在执行时才知道需要什么样的SQL语句,即必须在应用程序执行时动态建立SQL语句。定义游标的SQL语句是静态的;而定义动态游标的SQL语句是动态生成的。习题六1. 什么是存储过程?为什么要使用存储过程?存储过程是经过预编译的T-SQL语句

    25、的集合,它存放在数据库中,当用户执行存储过程时,存储过程在数据库服务器上运行。利用存储过程可以避免在网络上传输大量无用的信息或原始数据,只需要传输调用存储过程的指令和数据库服务器返回的处理结果,这样可以大大提高网络数据库应用系统的性能。2. 试为如下问题编写、建立存储过程,并定义合适的过程返回状态码和信息(均以图5-1的数据库为例):1) 插入一个新的供应商元组。CREATE PROCEDURE ins_sup(sno CHAR(3),sname CHAR (16),addr CHAR (10)AS INSERT INTO 供应商 VALUES(sno,sname,addr) IF ERROR = 0 RETURN 0 ELSE RETURN -1-调用exec ins_sup aa存储过程插入的供应商地址-查看结果select * from 供应商2) 给指定城市的所有仓库增加x m2的面积。CREATE PROCEDURE upd_wh_area(city char(10),area num


    注意事项

    本文(数据库系统及应用课后练习答案文档格式.docx)为本站会员主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2022 冰点文档网站版权所有

    经营许可证编号:鄂ICP备2022015515号-1

    收起
    展开