(123章)数据库应用与设计教材习题答案

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

《数据库应用与设计》习题参考答案第1章习题参考答案1、答案:数据库是长期储存在计算机设备上、相互关联的、可以被用户共享的数据集合。2、答案:数据库中的数据共享带来如下好处:低冗余,保证数据的一致性,易于扩充。但是数据库中的数据共享可能会引起并发访问的冲突,这就需要采用并发控制来避免。3、答案:因为概念数据模型可以真实地反映现实世界,被人们所理解。它是创建数据模型的第一个阶段。4、答案:图书管理员图书读者借阅工作证号姓名电话图书编号书名类别图书证号姓名电话mpn5、答案:因为多对多联系是一类比较复杂的联系,一般数据库管理系统也不直接支持多对多联系(需要付出更大的代价),所以多对多联系通常需要转换成一对多联系的。6、答案:存储数据独立性指当改变存储文件的组织方式或存储结构时,应用程序无需修改。概念数据独立性指当概念文件的结构发生变化时,应用程序无需修改。这两种数据独立性是通过三层结构获得的。在三层结构的方案中,CONCEPTUAL-ROUTINE保证了概念数据的独立性,而STORAGE-ROUTINE则保证了存储数据独立性。7、答案:数据库模式是用数据描述语言对数据库结构的每一层的框架及结构进行的精确定义。数据库模式分为存储模式(内模式)、概念模式(模式)、外部模式(子模式)。存储模式(内模式)定义了存储数据库结构,概念模式(模式)定义了概念数据库结构,外部模式(子模式)定义了外部数据库结构。8、答案:用户程序通过DBMS修改一条记录时所发生的一系列事件如下:(1)用户程序A向DBMS发出修改一条记录的指令,这时,用户程序要给出外部文件名、记录的关键字值和要修改的信息。(2)DBCS分析所接到的指令,访问对应的外部模式。(3)DBCS完成外部模式到概念模式的转换,决定访问哪个(些)概念文件。(4)由DBSS完成概念模式到存储模式的转换,并决定访问哪个(些)存储文件。(5)DBSS调用修改方法,通过操作系统修改相应的存储文件。(6)用户程序从系统缓冲区中获得DBMS返回的状态信息。第2章习题参考答案1、答案:(1)学生关系(学号、姓名、性别、年龄、所在学院)其中,主关键字为“学号”。“学号”的值域为含2个英文字符的字符串;“姓名”的值域为最多含4个中文字符的字符串;“性别”的值域为含1个中文字符的字符串,只能取“男”或“女”;“年龄”的值域为0-100之间的整数;“所在学院”的值域为最多含10个中文字符的字符串。课程关系(课程号,课程名,类别,学分)其中,主关键字为“课程号”。“课程号”的值域为含2个英文字符的字符串;“课程名”的值域为最多含10个中文字符的字符串;“类别”的值域为含2个中文字符的字符串,只能取“必修”或“选修”;“学分”的值域为1-9之间的整数。选课关系(学号,课程号,成绩)其中,主关键字为(学号、课程号)。“学号”的值域为含2个英文字符的字符串;“课程号”的值域为含2个英文字符的字符串;“成绩”的值域为0-100之间的整数。(2)3个关系之间有参照和被参照关系。学生关系和课程关系属于被参照关系,选课关系属于参照关系。选课关系中的学号参照了学生关系中的学号,选课关系中的课程号参照了课程关系中的课程号。实现参照的方法如下:在选课关系中定义学号为参照了学生关系中的学号的外部关键字,在选课关系中定义课程号为参照了课程关系中的课程号的外部关键字。2、答案:(1)σ职称=”教授”(教师)(2)π名称,学时(课程)(3)π姓名(σ名称=”操作系统”(课程)教师)(4)π责任教师,类型(课程)÷(“必修”,”选修”)3、答案:“CREATEDATABASEdatabase_name”后面的“ON”短语指定用来存储数据库的操作系统文件(存储在磁盘上的数据文件),该关键字后跟以逗号分隔的filespec项列表。“Log”后面的“ON”指定用来存储数据库日志的操作系统文件(日志文件),该关键字后跟以逗号分隔的filespec项列表。第3章习题参考答案1、答案:SQL是一种一体化、高度非过程化、简洁的语言,它可以直接以命令方式交互使用,也可以嵌入到程序设计语言中以程序方式使用。2、答案:模式(SCHEMA)是根据应用的需要,将数据库中的一组各种对象逻辑组织在一起的逻辑结构。模式的使用可以使数据库管理更加方便。3、答案:列级约束的定义语法格式为:CREATETABLE表名(列名数据类型[CONSTRAINT约束名]PRIMARYKEY...)表级约束的定义语法格式为:CREATETABLE表名(列名数据类型,...[CONSTRAINT约束名]PRIMARYKEY(列名[,...n])当主关键字由一个列组成时,既可以使用列级约束的定义,也可以使用表级约束的定义;当主关键字由两个及两个以上列组成时,则必须用表级约束定义。4、答案:在关系数据库中可以通过外部关键字使两个关系关联,这种联系通常是一对多(1:n)的,其中主(父)关系(1方)称为被参照关系(被参照表),从(子)关系(n方)称为参照关系(参照表)。如果定义的是参照表,则定义参照完整性约束的方法如下:(1)列级约束的定义语法格式CREATETABLE表名(...列名数据类型[CONSTRAINT约束名][FOREIGNKEY]REFERENCES被参照表表名(列名)[ONDELETE{NOACTION|CASCADE|SETNULL|SETDEFAULT}][ONUPDATE{NOACTION|CASCADE|SETNULL|SETDEFAULT}]...)(2)表级约束的定义语法格式为CREATETABLE表名(列名数据类型,...[CONSTRAINT约束名]FOREIGNKEY(列名)REFERENCES被参照表表名(列名)[ONDELETE{NOACTION|CASCADE|SETNULL|SETDEFAULT}][ONUPDATE{NOACTION|CASCADE|SETNULL|SETDEFAULT}])5、答案:CHECK约束即域完整性约束,用来说明该列的取值范围。6、答案:略。分别参见3.4.1、3.4.2、3.4.3。7、答案:作用是说明在被参照表的被参照记录上发生删除(DELETE)和更新(UPDATE)操作时的处理方法。NOACTION说明禁止删除或更新被参照记录,CASCADE说明进行级联处理(删除或更新),SETNULL说明将参照记录的对应字段设置为空值,SETDEFAULT说明参照记录的对应字段设置为默认值。8、答案:略。参见3.5.1。9、答案:GROUPBY分组查询只能显示分组后的计算结果。COMPUTEBY分组查询不仅能显示分组后的计算结果,还能显示明细信息;可以计算子组的汇总值,也可以同时计算整个结果集的汇总值。10、答案:为了保证分组查询的正确性,GROUPBY不需要ORDERBY的配合,因为GROUPBY只显示分组后的计算结果。而COMPUTEBY则需要ORDERBY的配合,这样的语法规定是为了使明细信息能够和分组汇总信息对应起来。11、答案:基本表是指独立存在的表,即用CREATETABLE命令建立的表。视图是虚拟表,本身并不真正存在数据,视图的内容是由SQLSELECT查询定义的。二者区别如下:基本表是独立存在的,里面包含数据。视图是虚拟表,里面不包含数据,只有其定义。视图可以源自一个表或多个表。二者的相同之处和联系:二者都包含一系列命名的列和行,对视图的查询和对基本表的查询基本相同,通过视图查询到的数据与基本表的数据同步更新。

1 / 5
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功