四级数据库工程师课后习题答案 联系客服

发布时间 : 星期六 文章四级数据库工程师课后习题答案更新完毕开始阅读90bc00dbbaf67c1cfad6195f312b3169a451eadb

5.8 答案

(1)商场经营管理系统实体集属性列表: 供应商实体集属性:

供应商编号,名称,地址,邮编,联系人,电话,传真,网址,电子邮箱,开户银行,账户名称,账户账号 商品及库存实体集属性:

商品类别编号,类别名称,类别描述信息,商品编号,品名,生产日期,单价,库存量, 商品描述信息

销售员信息实体集属性:

销售人员编号,姓名,性别,年龄,身份证,地址,邮编,电话,收银台编号,状态, 收银台描述信息 顾客信息实体集属性:

顾客编号,姓名,性别,年龄,身份证号,地址,邮编,电话 会员卡实体集属性:

会员卡号,有效起始日期,有效截止日期,积分,状态 (2)3NF关系模式(注,下划属性为主码属性): 供应商信息(供应商编号(PK),名称,地址,邮编,联系人,电话,传真,网址,电子邮

箱,开户银行,账户名称,账户账号)

商品类别(商品类别编号(PK),类别名称,类别描述信息) 商品(商品编号(PK),品名,生产日期,单价,库存量,商品描述信息,商品类别编号(FK)) 采购入库单据(入库单据编号(PK),入库日期,经手人,入库单据描述) 采购入库单据明细(入库单据编号(FK),商品编号(FK),进价,数量,供应商编号(FK),

购买日期)

销售人员(销售人员编号(PK),姓名,性别,年龄,身份证,地址,邮编,电话) 收银台(收银台编号(PK),状态,收银台描述信息) 会员卡(会员卡号(PK),有效起始日期,有效截止日期,积分,状态) 销售单据(销售单编号(PK),会员卡号(FK),本次积分,付款总金额,销售日期,销售人

员编号(FK),收银台编号(FK),销售单据描述)

销售单据明细(销售单据编号FK,商品编号FK,单价,数量,总价,折扣率,折扣总价) 商品价格变动表(商品编号(FK),开始日期,结束日期,销售价格,注释) 顾客信息(顾客编号(PK), 会员卡号(FK),姓名,性别,年龄,身份证号,地址,邮

编,电话)

5.9 答案

(1)R的码是(AD)

(2)R是1NF的关系模式

(3)将R分解为3NF的关系模式如下:

R1(D,C,G) R2(A,B,E) R3(B,C,F) 5.10 答案

R1(TIME,TERM,ROOM,CNO) R2(TIME,CNO,TNO) R3(SNO,CNO,SCORE) R4(CNO,CNAME,CREDIT)

第6章习题参考答案

6.1 答案

(1)堆文件是一种数据库文件结构形式。在堆文件中,记录随机地存储在文件物理空间中,

新插入的记录存储在文件的末尾。

(2)顺序文件是一种数据库文件结构形式。在顺序文件中,记录按照查找码值的升序或降

序顺序排列存储。

(3)聚集文件是一种数据库文件结构形式。聚集文件具有多种记录类型,存储了来自多个

关系表的记录数据,每个关系表对应文件中的一种记录类型。

(4)索引技术(Indexing)是一种快速文件访问技术,它将文件记录在某个或某些域(或

称为属性)上的取值与该记录的物理地址直接联系起来,提供了一种根据记录域的取值快速访问文件记录的机制。

(5)对数据文件和它的一个索引文件,如果数据文件中数据记录的排列顺序与索引文件中

索引项的排列顺序相一致,则该索引文件称为聚集索引。否则,该索引文件称为非聚集索引。

(6)在数据文件的包含主码的属性集上建立的索引称为主索引。在数据文件的非主属性上

建立的索引称为辅索引。

(7)如果数据文件中的每个查找码值在索引文件中都对应一个索引记录,则该索引称为稠

密索引;如果只是一部分查找码的值有对应的索引记录,则该索引称为稀疏索引。 (8)如果一个数据文件按照某个查找码组织为顺序文件,同时又对数据文件建有聚集索引,

则该数据文件称为索引顺序文件。 6.2 答案

设3门课程分别为DB、OS和COM,5个学生分别为BAI、DE、GU、HAI和YE。如果用户查询主要是根据课程查找选课的学生,则可建立如下图所示的聚集文件。

DBOSCOMYeLiuWuCOMOSOSDBDBBAIDEGUHAIYE7578928692DBDBDBOSOSOSCOMCOM(a) COURSE(b) ENROLLMENTYeHAIYELiuDEGUWuBAI7578928692(c) 聚集文件 6.3 答案

有序索引技术利用索引文件实现查找码取值到记录物理地址间的映射关系。索引文件由索引记录组成,每个记录中的索引项记录了某个特定的查找码值和具有该值的数据文件记录的物理地址。

当需要访问数据文件中某个数据记录时,先根据查找码值查阅索引文件,找到对应的索引项,然后从索引项中找出数据记录在数据文件中的物理地址.根据这个地址访问数据记录。 6.4 答案

散列技术是一种快速文件访问技术,它利用散列函数实现文件记录域取值到记录物理地址间的直接映射关系。当需要访问数据文件中查找码值为si的某个或某些文件记录时,将si作为散列函数h的输入,计算得出的散列函数输出值h(si)就是文件记录在数据文件中的物

理地址。 6.5 答案

关系DBMS数据字典中的元数据包括:关系模式信息、与视图描述有关的信息、关系的存储结构和存取方法信息、完整性约束、安全性有关的信息、数据库运行统计信息。

DBMS使用数据字典中的元数据完成其相应的存储管理和查询处理功能。DBA利用数据字典监视DBMS使用情况,完成有关系统管理工作。一般用户也可通过数据字典查阅部分数据库结构信息。 6.6 答案

数据库物理设计的主要步骤有数据库逻辑模式调整、文件组织与存取设计、数据分布设计、安全模式设计、确定系统配置、物理模式评估。

第7章习题参考答案

7.1 答案

数据库应用系统功能设计包括数据库事务设计和应用程序设计。与数据库应用系统概念设计、逻辑设计、物理设计相对应,应用程序(软件)设计分为总体设计、概要设计和详细设计,数据库事务设计则由事务概要设计和事务详细设计组成。 7.2 答案

复杂数据库事务的设计与实现既要遵循应用领域特定的业务逻辑,又依赖于具体数据库系统所提供的事务实现机制。复杂事务的设计可以分解为概要设计和详细设计两个步骤。概要设计注重事务本身的处理流程,暂时先不考虑事务中与DBMS平台相关、具体的数据操作方法和事务实现机制,以提高设计结果的适用性。而事务详细设计则从概要设计得出的事务流程出发,设计可在具体DBMS平台下实现的特定事务。

事务概要设计的核心内容是事务处理逻辑设计。事务概要设计包括了事务名称、事务所访问的关系表及关系属性、事务处理逻辑、事务用户等信息。 7.3 答案

软件体系结构是一种可预制、可重构的软件框架结构,它描述了软件系统的总体组织和层次划分、系统元素及其功能分配、全局控制、系统元素间的协调和交互、数据存取等。

第8章习题参考答案

8.1 答案:0~255

8.2 答案:年、月、日中间用“/”或者“-”分隔符,日期和时间间空一个空格,时、分、

秒之间用“:”隔离。日期和时间数据用单引号括起来。

8.3 答案:分钟。

8.4 答案:p为数字位个数,q为小数位个数。 8.5 答案:精确到小数点后4位。 8.6 答案

Char(10)代表的是普通编码的字符串,最多存放10个字符,5个汉字,固定的占用10个字节的空间。nchar(10)代表的是统一字符编码的字符串,最多存放10个字符,10个汉字,固定的占用20个字节的空间。 8.7 答案

Char(n)代表的是普通字符编码按定长存储的字符串,“n”的含义是字符的个数,固定占用n个字节的空间。varchar(n) 代表的是普通字符编码按不定长存储的字符串,“n”的含

义也是字符的个数,按字符的实际长度占用空间。

8.8 答案

支持两种,一种是系统使用的全局变量,用“@@”前缀标识。一种是用户使用的普遍变量,用“@”前缀标识。 8.9 答案

创建Student表的SQL语句为: CREATE TABLE Student ( Sno char(7) primary key, Sname char(10) not null, Ssex char(2) check (Ssex In ('男', '女')), Sage tinyint check(Sage >= 14), Sdept varchar(20) ) 创建Course表的SQL语句为: CREATE TABLE Course ( Cno char(10) primary key, Cname char(20) not null, Periods smallint check (Periods>0), Property char(4) check (Property in ('必修', '选修')) ) 创建SC表的SQL语句为: CREATE TABLE SC ( Sno char(7) , Cno char(10) , Grade smalldate check(Grade between 0 and 100), Primary key(Sno, Cno), Foreign key (Sno) references Student(Sno), Foreign key(Cno) references Course(Cno) ) 8.10 答案

(1)Alter Table SC add XKLB char(4)

(2)Alter Table Course Alter Column Periods tinyint (3)Alter Table Course Drop Column Property 8.11 答案 (1)select sno, sum(grade) 总成绩, avg(grade) 平均成绩, count(*) 选课门数 from sc group by sno having count(*) > 2

(2)select sno, sum(grade) 总成绩 from sc group by sno having sum(grade) > 200

(3)select sname, sdept from Student join SC on Student.Sno = SC.Sno where cno = C02'

(4)select sname, cno, grade

from student s join sc on s.sno= sc.sno where grade > 80