浙大远程教育数据库系统概论离线作业答案.docx

上传人:b****5 文档编号:5237130 上传时间:2022-12-14 格式:DOCX 页数:30 大小:197.66KB
下载 相关 举报
浙大远程教育数据库系统概论离线作业答案.docx_第1页
第1页 / 共30页
浙大远程教育数据库系统概论离线作业答案.docx_第2页
第2页 / 共30页
浙大远程教育数据库系统概论离线作业答案.docx_第3页
第3页 / 共30页
浙大远程教育数据库系统概论离线作业答案.docx_第4页
第4页 / 共30页
浙大远程教育数据库系统概论离线作业答案.docx_第5页
第5页 / 共30页
点击查看更多>>
下载资源
资源描述

浙大远程教育数据库系统概论离线作业答案.docx

《浙大远程教育数据库系统概论离线作业答案.docx》由会员分享,可在线阅读,更多相关《浙大远程教育数据库系统概论离线作业答案.docx(30页珍藏版)》请在冰豆网上搜索。

浙大远程教育数据库系统概论离线作业答案.docx

浙大远程教育数据库系统概论离线作业答案

浙江大学远程教育学院

《数据库系统概论》课程作业

姓名:

学号:

年级:

15年春

学习中心:

—————————————————————————————

第一章习题2、6、10

第二章习题5、6

第三章习题4、5、9

第四章习题3、7、8、10

第五章习题2、5、6、7

第六章习题2、7

第七章习题9、10

第九章习题3

第十章习题3、4、5

第十一章习题4、7、9*、10*

 

第一章习题

2、答:

使用数据库系统有许多优点,主要是:

(1)大大提高应用系统的开发效率。

因为数据库系统中应用程序不必考虑数据的定义、存储和数据存取的具体路径等细节工作,这些都由数据库管理系统完成,开发人员就可以专注于用户需求的理解和应用逻辑的设计等工作。

(2)应用逻辑或是数据的逻辑结构发生变化,数据库系统提供了数据与程序之间的独立性。

数据库系统具有逻辑独立性,逻辑结构改变,用户程序也可以不变。

这样既简化了应用程序的编制,又大大减少了应用程序的维护和修改。

(3)减轻数据库管理人员维护系统的负担。

因为数据库中的数据是由数据库管理系统统一管理和控制,包括数据的完整性和安全性、并发控制、数据库恢复等都由数据库管理系统执行。

总是,数据库管理系统便于数据的集中管理,控制数据冗余,提高数据的利用率和一致性,又有利于应用程序的开发和维护。

6、答:

数据库管理系统的主要功能有:

(1)数据库定义功能;

(2)数据组织、存储和管理功能;

(3)数据操纵功能;

(4)数据库的事务管理和运行管理;

(5)数据库的建立和维护功能;

(6)其他功能,包括数据库管理系统与网络中其他软件系统的通信功能,不同数据库之间的互访和互操作功能等。

 

10、答:

层次模型用树形结构来表示各类实体以及实体间的联系。

实例1:

教员学生层次模型

实例2:

行政机构层次模型

编号

机构名

办公地点

行政机构

科室

科室编号

科室名

职工号

姓名

研究方向

职工

实例3:

行政区域层次模型

国家

自治区

直辖市

第二章习题

5、答:

关系模型的完整性规则是对关系的某种约束条件。

关系模型中有三类完整性约束:

实体完整性、参照完整性和用户自定义完整性。

其中实体完整性和参照完整性是关系模型必须满足的完整性约束条件,被称做是关系的两个不变性,应该由关系系统自动支持。

(1)实体完整性规则:

若属性A是基本关系R的主属性,则属性A不能取空值。

(2)参照完整性规则:

若属性(或属性组)F是基本关系R的外码,它与基本关系S的主码KS相对应(基本关系R和S不一定是不同的关系),则对于R中每个元组在F上的值必须为:

1)空值(F的每个属性值均为空值);

2)等于S中某个元组的主码值。

(3)用户自定义的完整性是针对某一具体关系数据库的约束条件。

它反映某一具体应用所涉及的数据必须满足的语义要求。

在参照完整性中,外部码属性的值可以为空,它表示该属性的值尚未确定,但前提条件是该外部码属性不是其所在关系的主属性。

例如,在下面的“学生”表中,“专业号”是一个外部码,不是学生表的主属性,可以为空,其语义是,该学生的专业尚未确定。

即属性”专业号”本身不是主属性,则可以取空值,否则不能取空值。

学生(学号,姓名,性别,专业号,年龄)

专业(专业号,专业名)

在下面的“选修”表中的“课程号”虽然也是一个外部码属性,但它又是"课程"表的主属性,所以不能为空,因为关系模型必须满足实体完整性。

课程(课程号,课程名,学分)

选修(学号,课程号,成绩)

6、答:

(1)

关系代数:

ALPHA语言:

GETW(SPJ.SNO):

SPJ.JNO=’J1’

QBE语言:

SPJ

SNO

PNO

JNO

QTY

P.S1

J1

(2)

关系代数:

ALPHA语言:

GETW(SPJ.SNO):

SPJ.JNO=’J1’∧SPJ.PNO=’P1’

QBE语言:

SPJ

SNO

PNO

JNO

QTY

P.S1

P1

J1

(3)

关系代数:

注:

是连在一起的,表示连接

ALPHA语言:

QBE语言:

SPJ

SNO

PNO

JNO

QTY

P.S1

P1

J1

P

PNO

PNAME

COLOR

WEIGHT

P1

(4)

关系代数:

ALPHA语言:

QBE语言:

S

SNO

SNAME

STATUS

CITY

S1

天津

P

PNO

PNAME

COLOR

WEIGHT

P1

SPJ

SNO

PNO

JNO

QTY

S1

P1

P.J1

 

(5)

关系代数:

ALPHA语言:

第三章习题

4、答:

a.建立四个表:

建立S表:

S(SNO,SNAME,STATUS,CITY)

CREATETABLES

(SNOCHAR(3),

SNAMECHAR(10),

STATUSCHAR

(2),

CITYCHAR(10));

建立P表:

P(PNO,PNAME,COLOR,WEIGHT0

CREATETABLEP

(PNOCHAR(3),

PNAMECHAR(10),

COLORCHAR(4),

WEIGHTINT);

建立J表:

J(JNO,JNAME,CITY);

CREATETABLEJ

(JNOCHAR(3),

JNAMECHAR(10),

CITYCHAR(10));

建立SPJ表:

SPJ(SNO,PNO,JNO,QTY);

CREATETABLESPJ

(SNOCHAR(3),

PNOCHAR(3),

JNOCHAR(3),

QTYINT));

b.查询:

(1)求供应工程J1 零件的供应商号码 SNO  

SELECTDISTINCTSNOFROMSPJWHEREJNO='J1'

(2)求供应工程J1零件 Pl 的供应商号码 SNO   

SELECTDISTINCTSNO

FROMSPJ

WHEREJNO='J1'ANDPNO='P1'

(3)求供应工程 J1零件为红色的供应商号码 SNO   

SELECTDISTINCTSNO

FROMSPJ,P

WHEREJNO='J1'ANDSPJ.PNO=P.PNOANDCOLOR='红'

(4)求没有使用天津供应商生产的红色零件的工程号JNO;

SELECTJNO

FROMJ

WHERENOTEXISTS

(SELECT*

FROMSPJ

WHERESPJ.JNO=J.JNO

ANDSNOIN

(SELECTSNO

FROMS

WHERECITY=’天津’)

ANDPNOIN

(SELECTPNO

FROMP

WHERECOLOR=’红’));

(5)求至少用了供应商Sl所供应的全部零件的工程号JNO

SELECTDISTINCTJNO

FROMSPJSPJZ

WHERENOTEXISTS

(SELECT*

FROMSPJSPJX

WHERESNO=’J1’

ANDNOTEXISTS

(SELECT*

FROMSPJSPJY

WHERESPJY.PNO=SPJX.PNO

ANDSPJY.JNO=SPJZ.JNO));

5、答:

(1)

SELECTSNAME,CITY

FROMS;

(2)

SELECTPNAME,COLOR,WEIGHT

FROMP;

(3)

SELECTJNO

FROMSPJ

WHERESNO=’S1’;

(4)

SELECTP.PNAME,SPJ.QTY

FROMP,SPJ

WHEREP.PNO=SPJ.PNOANDSPJ.JNO=’J2’;

(5)

SELECTDISTINCTPNO

FROMSPJ

WHERESNOIN

(SELECTSNO

FROMS

WHERECITY=’上海’);

(6)

SELECTJNAME

FROMJ,SPJ,S

WHEREJ.JNO=SPJ.JNO

ANDSPJ.SNO=S.SNO

ANDS.CITY=’上海’;

(7)

SELECTJNO

FROMJ

WHERENOTEXISITS

(SELECT*

FROMSPJ,S

WHEREJ.JNO=SPJ.JNO

ANDSPJ.SNO=S.SNO

ANDS.CITY=’天津);;

(8)

UPDATEP

SETCOLOR=’蓝’

WHERECLOOR=’红’;

(9)

UPDATESPJ

SETSNO=’S3’

WHERESNO=’S5’

ANDJNO=’J4’

ANDPNO=’P6’;

(10)

DELETE

FROMSPJ

WHERESNO=’S2’;

DELETE

FROMS

WHERESNO=’S2’;

(11)

INSERTINTOSPJ(SNO,JNO,PNO,QTY)

VALUES(S2,J6,P4,200);

9、答:

CREATEVIEWV_SPJAS

SELECTSNO,PNO,QTY

FROMSPJ

WHEREJNO=

(SELECTJNO

FROMJ

WHEREJNAME=’三建’);

(1)SELECTPNO,QTY

FROMV_SPJ;

(2)SELECTPNO,QTY

FROMV_SPJ

WHERESNO=’S1’;

 

第四章习题

3、答:

(1)信息安全标准的发展历史,如下图:

1993年加拿大可信计算机产品

评估准则

(CTCPEC)

1991年欧洲信息技术安全评估准则(ITSEC)

1993年

美国信息技术

安全联邦标准(FC)草案

1985年美国国防部可信计算机系统评估准则(TCSEC)

通用准则

(CC)

V1.01996年

V2.01998年

V2.11999年

1999年CCV2.1

成为国际标准

(ISO15408)

TCSEC是1985年美国国防部正式颁布的《DoD可信计算机系统评估准则》。

CC通用准则V2.1版于1999年被ISO纳为国际标准,2001年我国采用其为国家标准。

目前CC已经基本取代了TCSEC,成为评估信息产品安全性的主要标准。

TCSEC/TDI标准将TCSEC扩展到数据库管理系统,TCSEC/TDI中定义了数据库管理系统的设计与实现中需满足和用以进行安全性级别评估的标准,从安全策略、责任、保证和文档4各方面来描述安全性级别划分的标准。

CC提出了目前国际上公认的表述信息技术安全性的结构,即把对信息产品的安全要求分为安全功能要求和安全保证要求。

安全功能要求用以规范产品和系统的安全行为,安全保证要求解决如何正确有效地实施这些功能。

(2)CC评估保证级划分如下:

7、答:

(1)

GRAINTSELECT

ON职工,部门

TO王明;

 

(2)

GRAINTINSERT,DELETE

ON职工,部门

TO李勇;

(3)

GRAINTSELECT

ON职工

WHENUSER()=NAME

TOALL;

(4)

GRAINTSELECT,UPDATE(工资)

ON职工

TO刘星;

(5)

GRAINTALTERTABLE

ON职工,部门

TO张新;

(6)

GRAINTALLPRIVILIGES

ON职工,部门

TO周平

WITHGRANTOPTION;

(7)

CREATEVIEW部门工资

AS

SELECT部门.名称,MAX(工资),MIN(工资),AVG(工资)

FROM职工,部门

WHERE职工.部门号=职工.部门号

GROUPBY职工.部门号

GRAINTSELECT

ON部门工资

TO杨兰

8、答:

(1)

REVOKESELECT

ON职工,部门

FROM王明;

(2)

REVOKEINSERT,DELETE

ON职工,部门

FROM李勇;

(3)

REVOKESELECT

ON职工

WHENUSER()=NAME

FROMALL;

(4)

REVOKESELECT,UPDATE(工资)

ON职工

FROM刘星;

(5)

REVOKEALTERTABLE

ON职工,部门

FROM张新;

(6)

REVOKEALLPRIVILIGES

ON职工,部门

FROM周平;

(7)

REVOKESELECT

ON部门工资

FROM杨兰;

DROPVIEW部门工资

10、答:

因为强制存取控制是对数据本身进行密级标记,无论数据如何复制,标记与数据是一个不可分的整体,只有符合密级标记要求的用户才可以操纵数据,从而提供了更高级别的安全性。

第五章习题

2、答:

数据的完整性和安全性是两个既有联系又不尽相同的概念。

数据的完整性是为了防止数据库中存在不符合语义的数据,也就是防止数据库中存在不正确的数据。

数据的安全性是保护数据库防止恶意破坏和非法存取。

安全性控制的防范对象是非法用户和非法操作,防止他们对数据库数据的非法存取。

5、答:

关系数据库管理系统在实现参照完整性时需要考虑可能破坏参照完整性的各种情况,以及违约后的处理策略。

下表总结了可能破坏参照完整性的4种情况及可采取的违约策略:

4种情况分别是指:

在参照关系中插入元组、修改外码值时可能破坏参照完整性,在删除被参照表的元组、修改主码值时可能破坏参照完整性。

被参照表

参照表

违约处理

可能破坏参照完整性

插入元组

拒绝

可能破坏参照完整性

修改外码值

拒绝

删除元组

可能破坏参照完整性

拒绝/级联删除/设置为空值

修改主码值

可能破坏参照完整性

拒绝/级联删除/设置为空值

6、答:

CREATETABLEDEPT

(DeptnoNUMBER(3)RIMARYKEY,

DeptnameVARCHAR(10),

ManagerVARCHAR(10),

PhoneNumberChar(12)

);

CREATETABLEEMP

(EmpnoNUMBER(10),

EnameVARCHAR(10),

AgeNUMBER

(2)

CONSTRAINTC1CHECK(Age<=60),

JobVARCHAR(10),

SalNUMBER(9,2),

DeptnoNUMBER(3),

RIMARYKEY(Empno),

FOREIGNKEY(Deptno)REFFERENCESDEPT(Deptno)

);

7、答:

对于违反实体完整性和用户定义的完整性的操作,一般都采用拒绝执行的方式进行处理。

而对于违反参照完整性的操作,并非都是简单的拒绝执行,有时要根据应用语义执行一些附加的操作,以保证数据库的正确性。

第六章习题

2、答:

(1)关系模式如下:

学生:

S(Sno,Sname,Sbirth,Dept,Class,Rno)

班级:

C(Class,Pname,Dept,Cnum,Cyear)

系:

D(Dept,Dno,Office,Dnum)

学会:

M(Mname,Myear,Maddr,Mnum)

学生—学会:

SM(Sno,Mname,Date)

其中:

Sno——学号,Sname——姓名,Sbirth——出生年月,Dept——系名,Class——班号,Rno——宿舍区,Pname——专业名,Cnum——班级人数,Cyear——入校年份,Dno——系号,Office——系办公室地点,Dnum——系人数,Mname——学会名,Myear——成立年份,Maddr——地点,Mnum——学会会员人数,Date——入会年份

(2)每个关系模式的最小函数依赖集如下:

一、

学生S(Sno,Sname,Sbirth,Dept,Class,Rno)的最小函数依赖集如下:

Sno→Sname,Sno→Sbirth,Sno→Class,Class→Dept,Dept→Rno

传递依赖如下:

Sno→Class,Class→Dept,所以Sno与Dept之间存在着传递函数依赖Sno→Dept.

Class→Dept,Dept→Rno,所以Class与Rno之间存在着传递函数依赖Class→Rno.

Sno→Class,Class→Dept,Dept→Rno,所以Sno与Rno之间存在着传递函数依赖Sno→Rno.

(Pname,Cyear)→Class函数依赖左部具有两个属性,都是完全函数依赖,没有部分函数依赖的情况。

二、

班级C(Class,Pname,Dept,Cnum,Cyear)的最小函数依赖集如下:

Class→Pname,Class→Cnum,Class→Cyear,Pname→Dept,(Pname,Cyear)→Class.

由于Class→Pname,Pname→Class,Pname→Dept,所以C1ass与Dept之间存在着传递函数依赖Class→Dept。

三、

系D(Dept,Dno,Office,Dnum)的最小函数依赖集如下:

Dept→Dno,Dno→Dept,Dno→Office,Dno→Dnum

根据上述函数依赖可知,Dept与Office,Dept与Dnum之间不存在传递依赖。

四、

学会M(Mname,Myear,Maddr,Mnum)的最小函数依赖集如下:

Mname→Myear,Mname→Maddr,Mname→Mnum

该模式不存在传递依赖。

五、学生—学会SM(Sno,Mname,Date)的最小函数依赖集如下:

(Sno,Mname)→Date

该模式不存在传递依赖。

(Sno,Mname)→Date

函数依赖左部具有两个属性,都是完全函数依赖,没有部分函数依赖的情况。

(3)各关系模式的候选码、外部码,全码如下:

关系

候选码

外部码

全码

S

Sno

Dept,Class

C

Class和(Pname,Cyear)

Dept

D

Dept和Dno

M

Mname

SM

(Sno,Mname)

Sno,Mname

7、答:

(1)正确

(2)正确

(3)正确

(4)错误,正确应该是:

当且仅当多值依赖A→→B在R上成立,关系R(A,B,C)等于其投影R1(A,B)和R2(A,C)的连接。

(5)正确

(6)正确

(7)正确

(8)错误。

反例:

课本P52页图3.4中SC表,关系模式SC(Sno,Cno,Grade),(Sno,Cno)→Grade,但是Sno,Cno

Grade,Cno

Grade

 

第七章习题

9、答:

数据库的逻辑结构设计就是把概念结构设计阶段设计好的基本E-R图转换为与选用的数据库管理系统产品所支持的数据模型相符合的逻辑结构。

设计步骤为:

(1)将概念结构转换为一般的关系、网状、层次模型;

(2)将转换来的关系、网状、层次模型向特定数据库管理系统支持下的数据模型转换;

(3)对数据模型进行优化。

 

10、答:

(1)习题7的E-R图为:

学校

班级

学生

教研室

教员

课程

校——系

系——班级

系——教研室

班级——学生

室——教员

选修

指导

1

n

1

1

n

1

n

n

m

n

1

n

1

n

各实体属性如下:

系:

系编号,系名,学校名

班级:

班级编号,班级名,年级,系编号

教研室:

教研室编号,名称,系编号

学生:

学号,姓名,性别,学历,班级编号,导师职工号

课程:

课程编号,课程名

教员:

职工号,姓名,职称,教研室编号

各联系的属性如下:

选修课:

成绩

转换的关系模型如下(带下划线的属性是主码属性):

系(系编号,系名,学校名)

班级(班级编号,班级名,年级,系编号)

教研室(教研室编号,名称,系编号)

学生(学号,姓名,性别,学历,班级编号,导师职工号)

课程(课程号,课程名)

教员(职工号,姓名,职称,教研室编号)

选课(学号,课程号,成绩)

 

(2)习题8的E-R图为:

产品

零件

材料

仓库

组成

制造

存储

存放

m

n

m

n

n

n

m

1

各实体属性如下:

仓库:

仓库号,仓库名

产品:

产品号,产品名称,仓库号

零件:

零件号,零件名称

材料:

材料号,材料名称,材料类别,仓库号,存放量

各联系的属性如下:

产品组成:

使用零件数量

零件组成:

使用材料数量

零件储存:

存储量

材料存放:

存放量

转换的关系模型如下(带下划线的属性是主码属性):

仓库(仓库号,仓库名)

产品(产品号,产品名称,仓库号)

零件(零件号,零件名称)

材料(材料号,材料名称,材料类别,仓库号,存放量)

产品组成(产品号,零件号,使用零件数量)

零件组成(零件号,材料号,使用材料数量)

零件储存(零件号,仓库号,存储量)

 

第九章习题

3、答:

 

第十章习题

3、答:

把对数据库的修改写到数据库中和把这个修改的日志记录写到日志文件中是两个不同的操作。

有可能在这两个操作之间发生故障,即两个操作只完成了一个。

如果先写了数据库修改,而在运行记录中没有登记这个修改,则以后就无法恢复这个修改了。

如果先写日志,但没有修改数据库,按日志文件恢复时只不过是多执行一次不必要的UNDO操作,并不会影响数据库的正确性。

4、答:

(1)如果系统故障发生在14之后,T1,T3需要重做,T2,T4需要回滚。

(2)如果系统故障发生在10之后,T1需要重做,T2,T3需要回滚。

(3)如果系统故障发生在9之后,T1需要重做,T2,T3需要回滚。

(4)如果系统故障发生在7之后,T1需要重做,T2需要回滚。

5、答:

(1)如果系统故障发生在14之后,A=8,B=7,C=11;

(2)如果系统故障发生在12之后,A=10,B=0,C=11;

(3)如果系统故障发生在10之后,A=10,B=0,C=11;

(4)如果系统故障发生在9之后,A=10,B=0,C=11;

(5)如果系统故障发生在7之后,A=10,B=0,C=11;

(6)如果系统故障发生在5之后,A=0,B=0,C=0

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

当前位置:首页 > 高等教育 > 艺术

copyright@ 2008-2022 冰豆网网站版权所有

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