0
点赞
收藏
分享

微信扫一扫

ORACLE与数据库原理作业 习题2(答案全)


首先声明:这个是我尽力自己做的,不能保证百分之百正确,毕竟老师没发答案给我对

习题2

  • ​​一、选择题​​
  • ​​二、填空题​​
  • ​​三、判断题​​
  • ​​四、简答题​​

一、选择题

  1. 设有如图 2. 1 所示的关系表:

R
A B C
1 1 2
2 2 3

S

A B C
3 1 3

T

A B C
1 1 2
2 2 3
3 1 3

图 2. 1 第 1 小题关系 R 、S、T
则下列操作中正确的是( A )
A. T = R ∪ S B. T = R ∩ S C. T = R × S D. T = R/S
2. 关系代数运算是以( C )为基础的运算。
A.关系运算 B.谓词运算 C.集合运算 D.代数运算
3. 按条件 f 对 R 进行筛选关系代数表达式为( C )
A.R ⋈ R B. R ⋈ R C.σ ( ) D. Π ( )
4. 关系数据库管理系统能实现的专门关系运算包括( B )
A. 排序、索引、统计 B.选择、投影、连接 C.管理、更新、排序 D.显示、打印、制表
5. 设有如图 2.2 所示的关系表
R S T

A B C
a b c
b a f
c b d

图 2.2 第 6 小题关系 R 、S、T
则下列操作中正确的是( B )
A.T = R ∩ S B. T = R ∪ S C. T = R − S D. T = R × S
6. 设有关系 R 和 S,关系代数表达式 R-(R-S)表示的是( C )
A. R ∩ S B. R ∪ S C. R − S D. R × S
7. 关系运算中花费时间可能最长的是( D )
A. 选择 B. 投影 C. 除 D. 笛卡尔积

  1. 设有两个关系模式 R 和 S,下列各关系代数表达式不正确的是( D )
    A.R − S = R − (R ∩ S) B.R = (R − S) ∪ (R ∩ S) C.R ∩ S = S − (S − R) D.R ∩ S = S − (R − S)
  2. 设有一个学生档案的关系数据库中有关系模式 S(SNo, SN, Sex, Age),其中 Sno ,SN ,Sex , Age 分别代表学生的学号、姓名、性别、年龄。则从该关系中 “检索学生年龄大于 20 岁的学生的
    姓名”的关系代数表达式为( B )
    A.σ (Π >20(S)) B. Π (σ >20(S)) C. Π (Π >20(S)) D. σ (σ >20(S))
  3. 一个关系只有一个( D )
    A. 超码 B. 外码 C. 候选码 D. 主码
  4. 在关系模式中, 以下有关“码”的描述正确的是( C )
    A.可以由任意多个属性组成
    C. 由一个或多个属性组成,其值能唯一标识关系中的一个元组

B.至多由一个属性组成 D.以上都不对

  1. 同一个关系的任两个元组值( A )
    A. 不能完全相同 B. 可以完全相同 C.必须完全相同 D.以上都不对
  2. 一个关系数据库文件中的各条记录( B )
    A. 前后顺序不能任意颠倒,一定要按照输入的顺序排列
    B. 前后顺序可以任意颠倒,不影响库中的数据关系
    C. 前后顺序可以任意颠倒,但排列顺序不同, 统计处理的结果就可能不同
    D. 前后顺序不能任意颠倒,一定要按照关键字段值的顺序排列
  3. 关系模式的任何属性( A )
    A.不可再分 B. 可再分 C. 命名在关系模式中可以不唯一 D. 以上都不对
  4. 在关系模式 R(U,F)中, 如果 X Y,存在 X 的真子集 X1,使得 X1 Y,称函数依赖 X Y 为 ( C)
    A. 平凡函数依赖 B. 部分函数依赖 C. 完全函数依赖 D. 传递函数依赖
  5. 设谋数据库中有关系模式 R(商店编号, 商品编号, 库存量, 部门编号, 负责人),若规定每种 商品有一个编号, 每种商品可以在多个商店售卖; 每个商店能够销售多种商品,商店的每种商品 只能在一个部门销售;每个商店的每个部门有一个负责人,每个商店的每种商品只有一个库存量, 则该关系模式不存在函数依赖( A )
    A. 商店编号,商品编号 库存量
    B. 商店编号,商品编号 部门编号
    C. 商店编号,商品编号 负责人
    D. 负责人 商品编号
  6. 在一个关系 R 中,若每个数据项都是不可分割的,那么关系 R 一定属于( B )
    A. BCNF B. 1NF C. 2NF D. 3NF
  7. 下面“部门”关系中,因哪个属性而使他不满足第一范式( C )
    部门(部门号,部门名, 部门总经理,部门成员)
    A. 部门总经理 B. 部门成员 C. 部门名 D. 部门号
  8. 规范化过程主要克服数据逻辑结构中的插入异常、删除异常以及( C )
    A. 数据的不一致性 B.结构不合理 C.冗余度大 D.数据丢失

二、填空题

在关系运算中,查找满足一定条件的元组的运算称之为____选择_______

在关系代数中,从两个关系中找出相同元组的运算称为____交_______运算。

传统的集合“并、差、交”运算施加于两个关系时,这两个关系必须__相容_________。

关系代数运算中,专门的关系运算有___选择________ 、____投影_______、__连接_________。

设有关系 R,从关系 R 中选择条件 f的元组,则关系代数表达式应是__σf( R) _________。

当对两个关系R 和 S 进行自然连接运算时,要求 R 和 S 含有一个或多个共有的___属性________。

如果关系 R2 的外部关系键 X 与关系 R1 的主关系键 X 的每个值必须在关系 R1 中主关系键的 值中找到, 或者为空,这是关系的_______参照完整性____原则。

在关系数据库中,把数据表示成二维表,每一个二维表称为___关系________。

1F、2NF、3NF 之间相互是一种____投影_______关系。

  1. 在关系数据库的规范化理论中,在执行“分解”时,必须遵守的规范化规则:保持原有的依 赖关系和_____投影______。

三、判断题

关系模型就是关系数据库。错误

关系表中的每一横行称作一个元组。正确

取出关系中的某些列,并消去重复的元组只涉及到关系数据库的一类操作,即投影操作。错误

关系必须规范化,属性可以再分割。错误

第三范式的表一定不包含部分依赖关系。错误

四、简答题

  1. 关系模型的完整性规则有哪几类?
    答:关系模型中,有三类完整性约束,即实体完整性、参照完整性和用户自定义的完整性。
    其中,实体完整性和参照完整性是关系模型必须满足的完整性约束条件,被称作关系的两个不变性。任何关系数据库系统都应该支持这两类完整性。除此之外,不同的关系数据库系统由于应用环境的不同,往往还需要一些特殊的约束条件,这就是用户自定义完整性,用户自定义完整性体现了具体领域中的语义约束。
  2. 举例说明什么是实体完整性和参照完整性。
    答:实体完整性是指主码的值不能为空或部分为空。例如,学生关系中的主码“学号”不能为空,选课关系中的主码“学号+课程号”不能部分为空,即“学号”和“课程号”两个属性都不能为空。
    参照完整性是指如果关系R2的外码X与关系R1的主码相符,则X的每个值或者等于R1中主码的某一个值或者取空值。例如,学生关系S的“系别”属性与系别关系D的主码“系别”相对应,因此,学生关系S的“系别”属性是该关系S的外码,学生关系S是参照关系,系别关系D是被参照关系,学生关系中某个学生(如S1或S2)“系别”的取值,必须在参照的系别关系中主码“系别”的值中能够找到,如果某个学生(如S11)“系别”取空值,则表示该学生尚未分配到任何一个系;否则,它只能取系别关系中某个元组的系别号值。
  3. 关系的性质主要包括哪些方面?
    关系具有如下性质:
    1)列是同质的,即每一列中的分量必须来自同一个域,必须是同一类型的数据;

2)不同的属性可来自同一个域,但不同的属性必须有不同的名字;

3)列的顺序可以任意交换。但交换时,应连同属性名一起交换,否则将得到不同的关系;

4)关系中元组的顺序(即行序)可任意,在一个关系中可以任意交换两行的次序。因为关系是以元组为元素的集合,而集合中的元素是无序的,所以作为集合元素的元组也是无序的;

5)关系中不允许出现相同的元组。因为数学上集合中没有相同的元素,而关系是元组的集合,所以作为集合元素的元组应该是唯一的;

6)关系中每一分量必须是不可分的数据项,或者说所有属性值都是原子的,即是一个确定的值,而不是值的集合。属性值可以为空值,表示“未知”或“不可使用”,但不可“表中有表”;

由于非规划化关系会导致数据冗余、插入异常、删除异常、更新异常等问题,因此在构建关系时,应使用规范化关系。
4. 举例说明等值连接与自然连接的区别和联系。
R
A B C
a1 b1 2
a1 b2 4
a2 b3 6
a2 b4 8
S
B D
b1 5
b2 6
b3 7
b4 8
等值连接与自然连接的区别如下:
(1)等值连接中不要求相等属性值的属性名相同,而自然连接要求相等属性值的属性名必须相同,即两关系只有同名属性才能进行自然连接。如上图R中的C列和S中的D列可进行等值连接,但因为属性名不同,不能进行自然连接;

(2)在连接结果中,等值连接不将重复属性去掉,而自然连接去掉重复属性,也可以说,自然连接是去掉重复列的等值连接。如上图R中的B列和S中的B列进行等值连接时,结果有两个重复的属性列B,而进行自然连接时,结果只有一个属性列B

解释下列概念:笛卡尔积、关系、属性、元组、域、主键、外键、外部键、关系模式、 关系数据库模式、关系数据库、关系数据库的型和值。

答:笛卡儿积(Cartesian Product):给定一组域D1,D2,…,Dn(它们可以包含相同的元素,既可以完全不同,也可以部分或全部相同),则D1,D2,…,Dn的笛卡儿积为:
D1×D2×…×Dn={(d1,d2,…,dn)|di∈Di,i=1,2,…,n};

关系(Relation):笛卡儿积D1×D2×…×Dn的任一子集称为定义在域D1,D2,…,Dn上的n元关系(Relation),可用R(D1,D2,…,Dn)表示。
具有相同关系框架的关系称为同类关系;

关系头(Heading):关系头由属性名A1,A2,…,An的集合组成,每个属性Ai对应一个域Di(i=1,2,…,n)。关系头(关系框架)是关系的数据结构的描述,它是固定不变的;

关系体(Body):关系体是指关系结构中的内容或者数据,它随元组的插入、删除或修改而变化;

由于不同域(列)的取值可以相同,为了加以区别,必须对每个域(列)起一个名字,称为属性(Attribute);

关系中的每个元素是关系中的元组;

域(Domain)。域是一组具有相同数据类型的值的集合,又称为值域(用D表示);

关系键是一个表中的一个或几个属性,用来标识该表的每一行或与另一个表产生联系;

候选码(Candidate Key):能唯一标识关系中元组的一个属性或属性集,称为候选码,也称候选关键字或候选键;

主码(Primary Key):如果一个关系中有多个候选码,可以从中选择一个作为查询、插入或删除元组的操作变量,被选用的候选码称为主码,或称为主关系键、主键、关系键、关键字等;

如果关系R2的一个或一组属性X不是R2的主码,而是另一关系R1的主码,则该属性或属性组X称为关系R2的外码(Foreign key)或外部关系键;

关系的描述称为关系模式(Relation Schema)。它可以形式化地表示为:
R(U,D,DOM,F)

关系数据库的型称为关系数据库模式,是对关系数据库的描述,它包括若干域的定义以及在这些域上定义的若干关系模式;

在一个给定的应用领域中,所有实体以及实体之间联系所对应的关系的集合构成一个关系数据库;

关系数据库的型称为关系数据库模式,是对关系数据库的描述,它包括若干域的定义以及在这些域上定义的若干关系模式;关系数据库的值也称为关系数据库,是这些关系模式在某一时刻对应的关系的集合
6. 已知关系 R,S,T 如图 2.3 所示,
(1)R ∩ S (2) R ∪ S (3) R-S (4) ∏ ( )
(5) R ⋈ T (6) T (7) σ . =′ 2′ ( × )

(1)a1 b2
a2 b2

(2)
A B
a1 b1
a1 b1
a2 b2
a1 b3
(3)
A B
a1 b1
(4)

R

A B
a1 b1
a1 b2
a2 b2

S

A B
a1 b2
a1 b3
a2 b2

图 2.3 关系 R ,S,T

T

A C
a1 c1
a1 c2
a2 c3

以如图 2.4 所示的教学管理数据库为例,用关系代数表达以下各种查询要求:

T (教师关系)

TNO 教师号 TN 姓名 Sex 性别 Age 年龄 Prof
职称 Sal 工资 Comm 岗位津贴 Dept
系别
T1 李力 男 47 教授 1500 3000 计算机
T2 王平 女 28 讲师 800 1200 信息
T3 刘伟 男 30 讲师 900 1200 计算机
T4 张雪 女 51 教授 1600 3000 自动化
T5 张兰 女 39 副教授 1300 2000 信息
S (学生关系)

SNo
学号 SN
姓名 Sex
性别 Age
年龄 Dept
系别
S1 赵义 女 17 计算机
S2 钱聪 男 18 信息
S3 孙山 女 20 信息
S4 李思 男 19 自动化
S5 周文 男 20 计算机
S6 吴莉 女 18 自动化

C (课程关系)

CNo 课程号 CN
课程名 CT 课时
C1 程序设计 60
C2 微机原理 80
C3 数字逻辑 60
C4 数据结构 80
C5 数据库 60
C6 编译原理 60
C7 操作系统 60

TC(授课关系)

TNo
教师号 CNo
课程号
T1 C1
T1 C4
T2 C5
T2 C6
T3 C1
T3 C5
T4 C2
T4 C3
T5 C5
T5 C7

SC (选课关系)

SNo
学号 CNo 课程号 Score
成绩
S1 C1 90
S1 C2 85
S2 C5 57
S2 C6 80
S2 C7
S2 C4 70
S3 C1 75
S3 C2 70
S3 C4 85
S4 C1 93
S4 C2 85
S4 C3 83
S5 C2 89

图 2.4 教学管理数据库
(1) 查询 T1 老师所授课程的课程号和课程名。
ΠCNO,CN (σTNO= ‘T1’(TC)⋈Π CNO,CN( C))
(2) 查询年龄大于 18 岁的男同学的学号、姓名、系别。
ΠSNO,SN,Dept(σAge>18∧Sex=‘男’ (S))
(3) 查询“李力”老师所讲授课程的课程号、课程名、课时。
ΠCNo (ΠTNo(σTN=‘李力’(T)⋈TC) ⋈ C
(4) 查询学号为 S1 的同学所选修课程的课程号、课程名、成绩。
ΠCNo,CN,Score (σSNo=‘S1’ (SC) ⋈ ΠCNo,CN ( C))
(5) 查询“钱尔”同学所选修课程的课程号、课程名和成绩。
ΠCNo,CN,Score(ΠSNo (σSNo=‘钱尔’(S)) ⋈ ΠCno, CN( C) ⋈ SC)
(6) 查询全部学生都选修了的课程的课程号和课程名。
ΠCNo,CN (C⋈(ΠSNo,CNo (SC) ÷ ΠSNo (S)))
(7) 查询选修了课程号为 C1 和 C2 的学生的学号和姓名。
ΠSNo,CNo(SC) ÷ ΠCNo (σCNo= ‘C1’ ⋁ CNo=‘C2’ ) ( C))⋈ΠSNo,SN (S)


举报

相关推荐

0 条评论