数据库原理练习题集-参考答案 联系客服

发布时间 : 星期四 文章数据库原理练习题集-参考答案更新完毕开始阅读c951b22b4693daef5ff73dd6

内部实现这三个抽象层次的联系和转换,数据库系统在这三级模式之间提供了两级映像:外模式/模式映像和模式/内模式映像。正是这两级映像保证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性。

(10)简述数据与程序的逻辑独立性和数据与程序的物理独立性。为什么数据库系统具有数据与程序的独立性?

答:数据与程序的逻辑独立性:当模式改变时(例如增加新的关系、新的属性、改变属性的数据类型等),由数据库管理员对各个外模式/模式的映像做相应改变,可以使外模式保持不变。应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性。 数据与程序的物理独立性:当数据库的存储结构改变了,由数据库管理员对模式/内模式映像做相应改变,可以使模式保持不变,从而应用程序也不必改变,保证了数据与程序的物理独立性,简称数据的物理独立性。

数据库管理系统在三级模式之间提供的两级映像保证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性。

(11)什么叫数据与程序的物理独立性?什么叫数据与程序的逻辑独立性?为什么数据库系统具有数据与程序的独立性? 答:

数据与程序的逻辑独立性:当模式改变时(例如增加新的关系、新的属性、改变属性的数据类型等),由数据库管理员对各个外模式/模式的映像做相应改变,可以使外模式保持不变。应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性。数据与程序的物理独立性:当数据库的存储结构改变了,由数据库管理员对模式/内模式映像做相应改变,可以使模式保持不变,从而应用程序也不必改变,保证了数据与程序的物理独立性,简称数据的物理独立性。数据库管理系统在三级模式之间提供的两层映像保证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性。

第二部分 关系运算

(一)选择

1. B 2.C 3. D 4.C 5. A 6. C 7. C 8. D 9. D 10. B

14. B 25. C

15. C

11.①B ②C ③D 12. ①B ②A ③C 13. D 16. B 17. A 18. ①D ②B 19. D 20. C 21. ①D ②B ③C ④B ⑤D 22. C 23. A 24. B

(二)概念、术语:

术语:

关系的差运算:设关系R和S具有相同的关系模式,R和S的差运算是由属于R但不属于S的所有元组组成的的集合。

笛卡儿积运算:设关系R和S的目数分别为r和s,R和S的笛卡儿积是一个r+s目的元组集合,每个元组的前r个分量来自R中的的一个元组,后s个分量来自S中的一个元组。

关系的笛卡尔定义:笛卡尔积D1×D2× ?×Dn的任一子集称为在域D1,D2, ?,Dn上的关系。 投影运算:投影运算是按照j1,j2,?,jk的顺序,从关系R中取出列序号为j1,j2,?,jk的k列,并除去结果中的重复无级,构成一个以j1,j2,?,jk为顺序的k目关系。 选择运算:从关系R中挑选出满足公式F的那些元组。

联接运算:从关系R和S的笛卡儿积中选取属性值满足某一比较运算操作的元组。

自然联接运算:从关系R和S的笛卡尔积中选取公共属性值相等的元组,并去除重复的属性。

简述

(1)简述关系数据语言的特点和分类。 答:关系数据语言可以分为三类: 关系代数语言。

关系演算语言:元组关系演算语言和域关系演算语言。 SQL:具有关系代数和关系演算双重特点的语言。

这些关系数据语言的共同特点是,语言具有完备的表达能力,是非过程化的集合操作语言,功能强,能够嵌入高级语言中使用。

(2)简述等值连接与自然连接的区别和联系。

答:等值连接表示为R ?? S,自然连接表示为R ?? S;自然连接是除去重复属性的 R.A=S.B等值连接。两者之间的区别和联系如下:

· 自然连接一定是等值连接,但等值连接不一定是自然连接。

·等值连接要求相等的分量,不一定是公共属性;而自然连接要求相等的分量必须是公共属性。

·等值连接不把重复的属性除去;而自然连接要把重复的属性除去。

(三)应用题

1. 设有如下所示的关系模式S、C、SC: S(S#,SNAME,AGE,SEX) C(C#,CNAME,TEACHER) SC(S#,C#,GRADE)

试用关系代数表达式表示下列查询语句:

(1)检索“陆定”老师所授课程的课程号(C#)和课程名(CNAME)。 (2)检索年龄大于20的男学生学号(S#)和姓名(SNAME)。

(3)检索至少选修“陆定”老师所授全部课程的学生姓名(SNAME)。 (4)检索”李翔”同学不学课程的课程号(C#)。 (5)检索至少选修两门课程的学生学号(S#)。

(6)检索全部学生都选修的课程的课程号(C#)和课程名(CNAME)。 (7)检索选修课程包含“陆定”老师所授课程之一的学生学号(S#)。 (8)检索选修课程号为k1和k5的学生学号(S#)。 (9)检索选修全部课程的学生姓名(SNAME)。

(10)检索选修课程包含学号为2的学生所修课程的学生学号(S#)。 (11)检索选修课程名为“C语言”的学生学号(S#)和姓名(SNAME)。 解:本题各个查询语句对应的关系代数表达式表示如下:

(1). ∏C#,CNAME(σ (2). ∏S#,SNAME(σ

TEACHER=‘陆定’

(C)) (C))

TEACHER=‘陆定’

AGE>20∧SEX=‘女’

(3). ∏SNAME{s?? [∏S#,C#(sc)÷∏C#(σ (4). ∏C#(C)- ∏C#(σ

SNAME=‘李翔’

(C))]}

(S) ?? SC)

(5). ∏S#(σ[1]=[4]∧[2]≠[5] (SC × SC))

(6). ∏C#,CNAME(C?? (∏S#,C#(sc)÷∏S#(S))) (7). ∏S#(SC?? ∏C#(σ

TEACHER=‘陆定’

(C)))

(C))

(8). ∏S#,C#(sc)÷∏C#(σ

C#=’k1’∨ C#=’k5’

(9). ∏SNAME{s?? [∏S#,C#(sc)÷∏C#(C)]} (10). ∏S#,C#(sc)÷∏C#(σ

S#=’2’

(SC))

CNAME=‘C语言’

(11). ∏S#,SNAME{s?? [∏S#(SC?? σ

(C))]}

2.关系R和S如下图所示,试计算R÷S。

R A a a a b b c c

答案:

B b b b d d k k C c e h e d c e D d f k f l d f S C c e D d f A a c

B b k 3.设有如图所示的关系R和S,计算: (1)R1=R-S

R S (2)R2=R∪S

(3)R3=R∩S A B C A B C (4)R4=R×S

a b c b a f

b a f d a d

c b d

解:本题各小题的结果如图所示。

R-S R∪S

A B C A B C

a b c a b c

b a f c b d c b d

d a f

R∩S R×S

A B C A B C A B C

b a f a b c b a f

a b c d a f

b a f b a f

b a f d a f

c b d b a f c b d d a f

4.设有如图所示的关系R,S和T,计算: (1)R1=R∪S

R S T (2)R2=R-S

(3)R3=R ?? T A B A B B C (4)R4=R ?? T

a d d a b b

A<C

b e b a c c (5)R5=∏A(R)

c c b c b d (6)R6=σA=C(R×T)

解:本题各小题的结果如下图所示。 R1 R2 R3 R4 R5 R6 A B A B C A B B C A A B B C A B a d a d C c c a d b c a a d b c b e b e a d c c b a d c c c c c c a d b d c a d b d d a b e c c b e c c b a b e b d b e b d d e c c b d c c b d R

S