文档库 最新最全的文档下载
当前位置:文档库 › (完整版)数据库第二章关系代数习题

(完整版)数据库第二章关系代数习题

(完整版)数据库第二章关系代数习题
(完整版)数据库第二章关系代数习题

1.设有如图所示的关系S、SC和C,试用关系代数表达式表示下列查询语句:

S C SC

S# SNAME AGE SEX

1 李强23 男

2 刘丽22 女5 张友22 男C# CNAME TEACHER

k1 C语言王华

k5 数据库原理程军

k8 编译原理程军

S# C# GRADE

1 k1 83

2 k1 85

5 k1 92

2 k5 90

5 k5 84

5 k8 80

(1) 检索”程军”老师所授课的课程号(C#)和课程名(CNAME)。

(2) 检索年龄大于21的男学生学号(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)。(12)检索没有一门课程成绩不及格的学生学号,姓名。

答:本题各个查询语句对应的关系代数表达式表示如下:

(1) ΠC#,CNAME(σTEACHER ='程军'(C))

(2) ΠS#,SNAME(σAGE>21^SEX ='男'(S))

(3) ΠSNAME(S(ΠS#,C#(SC)÷ΠC#(σTEACHER ='程军'(C))))

(4) ΠC#(C)-ΠC#(σSNAME ='李强'(S)∞SC)

(5) ΠS# (σ1=4^2≠5 (S C×SC))

(6) ΠC#,CNAME(C∞(ΠS#,C#(SC)÷ΠS#(S)))

(7) ΠS# (SC∞ΠC# (σTEACHER ='程军'(C)))

(8) ΠS#,C#(SC)÷ΠC#(σC#=’K1’VC#=’K5’ (C))

(9) ΠSNAME(S∞(ΠS#,C#(SC)÷ΠC#(C)))

(10) ΠS#,C#(SC)÷ΠC#(σC#=’2’ (S C))

(11) ΠS#,SNAME(S∞ΠS#(SC∞(σCNAME ='C语言'(C))))

(12)П学号,姓名(学生)-П学号,姓名(σ分数<60(学生∞学习))。

2.现有关系数据库如下:

学生(学号,姓名,性别,专业,奖学金)。

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

学习(学号,课程号,分数)。

用关系代数表达式实现下列1-4小题:

1. 检索"英语"专业学生所学课程的信息,包括学号、姓名、课程名和分数。

П学号,姓名,课程名,分数(σ专业='英语'(学生∞学习∞课程))。

2. 检索"数据库原理"课程成绩高于90分的所有学生的学号、姓名、专业和分数。

П学号,姓名,专业,分数(σ分数>90∧名称='数据库原理'(学生∞学习∞课程))。

3. 检索不学课程号为"C135"课程的学生信息,包括学号,姓名和专业。

П学号,姓名,专业(学生)-П学号,姓名,专业(σ课程号='C135'(学生∞学习))。

4. 检索没有任何一门课程成绩不及格的所有学生的信息,包括学号、姓名和专业。

П学号,姓名,专业(学生)-П学号,姓名,专业(σ分数<60(学生∞学习))。

3.现有关系数据库如下:

学生(学号,姓名,性别,专业、奖学金)。

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

学习(学号,课程号,分数)。

用关系代数表达式实现下列1—4小题:

1. 检索“国际贸易”专业中获得奖学金的学生信息,包括学号、姓名、课程名和分数。

Π学号,姓名,课程名,分数(σ奖学金>0∧专业=国际贸易(学生∞学习∞课程))。

2. 检索学生成绩得过满分(100分)的课程的课程号、名称和学分。

Π课程号,名称,学分(σ分数=100(学习∞课程))。

3. 检索没有获得奖学金、同时至少有一门课程成绩在95分以上的学生信息,包括学号、姓名和专业。

Π学号,姓名,专业(σ奖学金<=0∧分数>95(学生∞学习))。

4. 检索没有任何一门课程成绩在80分以下的学生的信息,包括学号、姓名和专业。

Π学号,姓名,专业(学生)-Π学号,姓名,专业(σ分数<80(学生∞学习))。

4.设有关系S、SC和C,试用关系代数表达式完成下列操作。

S(snum,sname,age,sex),例:(1,“李强”,23,‘男’)是一条数据记录。SC(snum,cnum,score),例:(1,“C1”,83)是一条数据记录。C(cnum,cname,teacher) 例:(“C1”,“数据库原理”,“王华”)是一条数据记录。

(1) 检索“刘祥”同学不学课程的课程号。

(2) 检索有一门课程成绩在90分以上的男同学的姓名。

(3) 列出没有选修“人工智能”的学生名单。

(4) 找出选修了袁老师教的所有课程的学生名单。

(5) 查找每门课程成绩在70分以上并且平均成绩在75分以上的学生名单。

5.数据模型如下:

厂家S(SNO,SNAME,STATUS,CITY)

产品P(PNO,PNAME,WEIGHT,COLOR)

工程J(JNO,JNAME,CITY)

供货SPJ(SNO,PNO,JNO,QTY)

用关系代数写出下述操作.

1.给出为工程J1供货的厂商号.

2.给出供货量在300~500之间的所有供货情况.

3.给出由LODON的厂商供给LODON的工程的产品号.

4.给出满足如下条件的所有产品号:提供该零件的厂商和使用该零件的工程在同一城市.

5.给出由S1提供产品的工程名.

6.给出使用了由供应红色产品的厂商供应的产品的工程名.

7.求使用了全部零件的工程名.

8.供应P1,P2两种产品的厂家名.

9.显示与”TV”颜色相同的产品名.

10.给出使用了S1所提供的全部零件的工程名.

6.设教学数据库中有三个关系:

S(SNO,SNAME,AGE,SEX,SDEPT)

SC(SNO,CNO,GRADE)

C(CNO,CNAME,TNAME)

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

①查询LIU老师所授课程的课程号,课程名

②查询年龄大于23岁的男生的学号与姓名

③查询学号为S3学生所学课程的课程名与任课教师名

④查询选修LIU老师所授课程中一门课的女学生姓名

⑤查询WANG同学不学的课程的课程号

⑥查询至少选修两门课程的学生学号

⑦查询全部学生都选修的课程的课程号和课程名

⑧查询选修课程包含LIU老师所授课程的学生学号

1.(1)∏cnum(C)-∏cnum(σsname=’刘祥’(SC∞S))

(2) ∏sname(σscore>=90∧sex=’男’(SC∞S))

(3)∏sname(S)-∏sname(σc name=’人工智能’(SC∞S∞C))

(4)∏sname(∏snum,cnum(sc)÷∏cnum(σteacher=’袁’(c)) ∞s)

2.答案:

1.∏SNO(σjno=’J1’(SPJ))

2.σqty≤500∧qty≥300(spj)

3. ∏pno( (σcity=’london’(s))∞spj∞ (σcity=’london’(j)))

4. ∏PNO(∏SNO,CITY(S) ∞∏JNO,CITY(J) ∞SPJ))

5.∏JNAME(σsno=’s1’(J∞SPJ))

6. ∏JAME(∏SNO(∏PNO(σcolor=’RED’(P)) ∞∏SNO,PNO(SPJ))) ∞SPJ ∞J)

7. ∏JNAME((∏JNO,PNO(SPJ)÷∏PNO(P)) ∞J)

8. ∏SNAME(σ2=’p1’∧ 6=’p2∧1=5(SPJ×SPJ) ∞S)

9. ∏PNAME(∏COLOR(σpname=’TV’(P)) ∞P)

10. ∏JNAME((∏JNO,PNO(SPJ) ÷∏PNO(σsno=’s1’(p))) ∞J)

1.为某百货公司设计一个ER模型。

百货管辖若干个连锁商店,每家商店经营若干商品,每家商店有若干职工,但每个职工只能服务于一家商店。

实体类型“商店”的属性有:商店编号,店号,店址,店经理。实体类型“商品”的属性有:商品编号,商品名,单价,产地。实体类型“职工”的属性有:职工编号,职工名,性别,工资。在联系中应反映出职工参加某商店工作的开始时间,商店销售商品的有销售量。

试画出反映商店、商品、职工实体类型及联系类型的ER图,并将其转换成关系模式集。

2.在教学数据库S、SC、C中,用户有一查询语句:检索女同学选修课程的课程名和任课教师名。(1)试写出该查询的关系代数表达式;(2)试写出查询优化的关系代数表达式。

3.一个图书借阅管理数据库要求提供下述服务:

A.随时查阅书库中现有书籍的品种、数量与存放位置。所有各类书籍均可

由书号唯一标识。

B.可随时查询书籍借还情况。包括借书人单位、姓名、借书证号、借书日

期和还书日期。

我们约定:任何人可借多种书,任何一种书可为多个人所借,借书证号具有唯一性。

C.当需要时,可通过数据库中保存的出版社的电报编号、电话、邮编及地

址等信息向有关书籍的出版社增购有关书籍。我们约定,一个出版社可出版多

种书籍,同一本书仅为一个出版社出版,出版社名具有唯一性。

根据以上情况和假设,试做如下设计:

构造满足需求的E-R图。

4. 学校有若干个系,每个系有各自的系号、系名和系主任;每个系有若干名教师和学生,教师有教师号、教师名和职称属性,每个教师可以担任若干门课程,一门课程只能由一位教师讲授,课程有课程号、课程名和学分,并参加多项项目,一个项目有多人合作,且责任轻重有个排名,项目有项目号、名称和负责人;学生有学号、姓名、年龄、性别,每个学生可以同时选修多门课程,选修有分数。

(1)请设计此学校的教学管理的E-R模型。(第一章试题中已做)

(2)将E-R模型转换为关系模型。

答案:实体:商店(商店编号,店号,店址,店经理)

商品(商品编号,商品名,单价,产地)

职工(职工编号,职工名,性别,工资)

联系:P1-商店销售商品的有销售量间

P2-职工参加某商店工作的开始时

ER图:

关系模式集:商店模式(商店编号,店号,店址,店经理)

商品模式(商品编号,商品名,单价,产地)

职工模式(职工编号,职工名,性别,工资)

P1模式(商店编号,商品编号,月销售量)

P2模式(商店编号,职工编号,开始时间)

2.解:(1)πCNAME,TEACHER (σSEX='女'(S ×S C ×

C))

3.

借书人

图 书

出版社

借 阅

出 版

借书证号 姓 名

单 位

借书日期

还书日期

书 号 数 量

位 置

邮 编 地 址 电 话

出版社名 电报编号

4.

(2)系(系号,系名,系主任)

教师(教师号,教师名,职称,系号)

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

项目(项目号,名称,负责人)课程(课号,课程名,学分,教师号

1.现有关于班级、学生、课程的信息如下:

描述班级的属性有:班级号、班级所在专业、入校年份、班级人数、班长的学号;

描述学生的属性有:学号、姓名、性别、年龄;

描述课程的属性有:课程号、课程名、学分。

假设每个班有若干学生, 每个学生只能属于一个班, 学生可以选修多门课程, 每个学生选修的每门课程有一个成绩记载。根据语义, 画出它们的实体——联系E-R模型。

对应的E-R图如下图:

2.工厂(包括厂名和厂长名)需要建立数据库, 用来管理存储以下信息:

.一个厂内有多个车间, 每个车间有车间号、车间主任姓名、地址和电话;

.一个车间内有多个工人, 每个工人有职工号、姓名、年龄、性别和工种;

.一个车间生产多种产品, 产品有产品号和价格;

.一个车间生产多种零件, 一个零件也可能由多个车间制造。零件有零件号、重量和价格, .一个产品由多种零件组成, 一种零件也可装配在多种产品内,

. 产品与零件均存入仓库中, 厂内有多个仓库, 仓库有仓库号、仓库保管员姓名和电话。根据以上信息, 试完成:

①画出该系统的E-R模型。

②给出相应的关系数据模型。

③画出该关系的层次模型图。

解:

①画出该系统对应的E-R图如下图:

全局E-R概念模型

②给出相应的关系数据模型如下:

工厂(工厂代码,厂名,厂长名)

车间(车间号,车间主任姓名,地址,电话) 工人(职工号,姓名,年龄,性别,工种) 产品(产品号,价格)

零件(零件号,重量,价格,)

仓库(仓库号,仓库保管员姓名,电话)

第二章 关系数据库

第二章关系数据库系统 一、单选题 1.____不是集合。 A.关系 B.关系模式 C.域 D.笛卡儿乘积 2.任何关系的一个元组只能通过外部键与另一个关系中存在的元组相关联,这是 ______。 A.关系运算的安全性 B.数据库的安全性 C.关联完整性约束 D.实体完整性约束 3.关系数据库系统实体完整性约束的意义在于_____。 A.用主键唯一识别元组 B.实现实体间联系 C.防范非授权访问 D.保证关系运算安全性 4.设关系R和S的共同属性是a, _____不是R和S的连接运算(记条件f.R.a=S.a)。 A.R∞f S B.σf(R×S) C.(R f S)∞f S D.(R f S)∞f R 5.在不另加约束条件的情况下,______系统是安全的。 A.关系运算 B.关系代数 C.元组关系演算 D.域关系演算 6.实体-联系模型是_____的数据模型。 A.每个关系代数表达式都有一个等价的元组演算表达式与之对应。 B.每个元组演算表达式都有一个等价的关系代数表达式与之对应。 C.每个域演算表达式都有一个等价的关系代数表达式与之对应。 D.每个元组演算表达式都有一个等价的域演算表达式与之对应。 7.关系模式的候选键必须具有的性质是______。 A.唯一性 B.最小性 C.A和B D.由单个属性组成 8.数据库语言的使用方式是______。 A.交互使用 B.嵌入到宿主语言 C.A或B D.作为程序设计语言的子语言 9.关系代数查询语言ISBL的并/交运算与关系代数标准定义的区别是参加运算的关系____。 A.是否具有相同的属性数目 B.对应属性是否具有相同的域 C.对应属性的名称是否相同 D.元组数目是否相同 10.具有重命名功能的投影操作属于______的运算系统。 A.标准关系代数 B.ISBL语言 C.QUEL语言 D.QBE语言 11.关于DBMS的主要任务,最准确的是____。 A.完成全部数据库事务 B.处理用户查询 C.处理用高级语言编写的用户查询 D.有效地处理用高级查询语言编写的用户查询 12.____不属于查询处理操作系列。 A.扫描与语法检查 B.查询优化与代码生成 C.查询执行 D.建立数据模式 13.R S半主存算法要求主存提供用于存放输入关系的缓冲区大小是____。 A.2 B.M>1 C.能容纳两个关系 D.其中一个关系的容量再加1 14.笛卡儿乘积运算最快的算法是____算法。 A.简单 B.主存 C.半主存 D.大关系 15.sort-merge连接算法的预处理是各关系____。 A.按连接域排序 B.按连接域建立HASH文件 C.按连接域建立聚集索引 D.按连接域建立辅助索引

关系代数习题3.26

1. 下面的选项不是关系数据库基本特征的是()。 A.不同的列应有不同的数据类型 B.不同的列应有不同的列名 C.与行的次序无关 D.与列的次序无关 2. 一个关系只有一个()。 A.候选码 B. 外码 C. 超码 D. 主码 3. 关系模型中,一个码是()。 A.可以由多个任意属性组成 B.至多由一个属性组成 C.可有多个或者一个其值能够唯一表示该关系模式中任何元组的属性组成 D.以上都不是 4. 现有如下关系: 患者(患者编号,患者姓名,性别,出生日起,所在单位) 医疗(患者编号,患者姓名,医生编号,医生姓名,诊断日期,诊断结果) 其中,医疗关系中的外码是()。 A. 患者编号 B. 患者姓名 C. 患者编号和患者姓名 D. 医生编号和患者编号 5. 现有一个关系:借阅(书号,书名,库存数,读者号,借期,还期),假如同一本书允许一个读者多次借阅,但不能同时对一种书借多本,则该关系模式的外码是()。 A. 书号 B. 读者号 C. 书号+读者号 D. 书号+读者号+借期 6. 关系模型中实现实体间N:M 联系是通过增加一个()。

A.关系实现 B. 属性实现 C. 关系或一个属性实现 D. 关系和一个属性实现 7. 关系代数运算是以()为基础的运算。 A. 关系运算 B. 谓词演算 C. 集合运算 D. 代数运算 8. 关系数据库管理系统应能实现的专门关系运算包括()。 A. 排序、索引、统计 B. 选择、投影、连接 C. 关联、更新、排序 D. 显示、打印、制表 9. 五种基本关系代数运算是()。 A.∪-× σ π B.∪-σ π C.∪∩× σ π D.∪∩σ π 11. 关系数据库中的投影操作是指从关系中()。 A.抽出特定记录 B. 抽出特定字段 C.建立相应的影像 D. 建立相应的图形 12. 从一个数据库文件中取出满足某个条件的所有记录形成一个新的数据库文件的操作是()操作。 A.投影 B. 联接 C. 选择 D. 复制 13. 关系代数中的联接操作是由()操作组合而成。 A.选择和投影 B. 选择和笛卡尔积 C.投影、选择、笛卡尔积 D. 投影和笛卡尔积 14. 自然联接是构成新关系的有效方法。一般情况下,当对关系R和S是用自然联接时,要求R和S含有一个或者多个共有的()。 A.记录 B. 行 C. 属性 D. 元组 15. 假设有关系R和S,在下列的关系运算中,()运算不要求:“R 和S具有相同的元数,且它们的对应属性的数据类型也相同” 。

数据库第二章关系代数习题

1.设有如图所示的关系S、SC和C,试用关系代数表达式表示下列查询语句: S C SC S# SNAME AGE SEX 1 李强23 男 2 刘丽22 女5 张友22 男C# CNAME TEACHER k1 C语言王华 k5 数据库原理程军 k8 编译原理程军 S# C# GRADE 1 k1 83 2 k1 85 5 k1 92 2 k5 90 5 k5 84 5 k8 80 (1)检索”程军”老师所授课的课程号(C#)和课程名(CNAME)。 ∏C#,CNAME(δTEACHER=程军(C)) (2)检索年龄大于21的男学生学号(S#)和姓名(SNAME)。 ∏S#,SNAME(δAGE>21∧SEX=男(S)) (3)检索至少选修”程军”老师所授全部课程的学生姓名(SNAME)。 ∏SNAME((∏S#,C#(SC)÷∏C#(δTEACHER=程军(C)))S) (4)检索”李强”同学不学课程的课程号(C#)。 ∏C#(C)-∏C#(δSNAME=李强(S)SC) (5)检索至少选修两门课程的学号(S#)。 ∏S#(δ1=4∧2≠5(SC×SC)) (6)检索全部学生都选修的课程的课程号(C#)和课程名(CNAME)。 ∏C#,CNAME(∏S#,C#(SC)÷∏S#(S)C) (7)检索选修课程包含”程军”老师所授课程之一的学生学号(S#)。 ∏C#(δTEACHER=程军(C)SC) (8)检索选修课程号为k1和k5的学生学号(S#)。 ∏S#,C#(SC)÷∏C#(δC#=k1∨C#=k5(C)) (9)检索选修全部课程的学生姓名(SNAME)。 ∏SNAME((∏S#,C#(SC)÷∏C#(C))S) (10)检索选修课程包含学号为2的学生所选修课程的学生学号(S#)。 ∏S#,C#(SC)÷∏C#(δS#=2(SC)) (11)检索选修课程名为”C语言”的学生学号(S#)和姓名(SNAME)。 ∏S#,SNAME(∏S#(SC(δCNAME=C语言(C)))S) (12)检索没有一门课程成绩不及格的学生学号,姓名。 ∏S#,SNAME((∏S#(S)-∏S#(δGRADE<60(SC))S) 2.现有关系数据库如下: 学生(学号,姓名,性别,专业,奖学金)。 课程(课程号,名称,学分)。

关系代数讲解与例题

关系代数 关系代数是关系数据库系统查询语言的理论基础。 关系代数的9种操作: 并、交、差、乘、选择、投影、联接、除、自然联接运算。 五个基本操作: 并(∪) 差(-) 笛卡尔积(×)投影(σ) 选择(π) 四个组合操作: 交(∩) 联接(等值联接)自然联接(RS) 除法(÷) 关系代数表达式: 由关系代数运算经有限次复合而成的式子称为关系代数表达式。这种表达式的运算结果仍然是一个关系。可以用关系代数表达式表示对数据库的查询和更新操作。 关系代数(演算)要求掌握各种语句的应用,多做书中的例题可以帮助自己熟能生巧。 关系代数表达式举例 用关系代数表示数据查询的典型例子 [例]设教学数据库中有3个关系: 学生关系S(SNO,SNAME,AGE,SEX) 学习关系SC(SNO,CNO,GRADE) 课程关系C(CNO,CNAME,TEACHER) 下面用关系代数表达式表达每个查询语句。 (1) 检索学习课程号为C2的学生学号与成绩。 πSNO,GRADE(σCNO='C2'(SC)) (2) 检索学习课程号为C2的学生学号与姓名 πSNO,SNAME(σCNO='C2'(SSC)) 由于这个查询涉及到两个关系S和SC,因此先对这两个关系进行自然连接,同一位学生的有关的信息,然后再执行选择投影操作。 此查询亦可等价地写成: πSNO,SNAME(S)(πSNO(σCNO='C2'(SC))) 这个表达式中自然连接的右分量为"学了C2课的学生学号的集合"。这个表达式比前一个表达式优化,执行起来要省时间,省空间。 (3)检索选修课程名为MATHS的学生学号与姓名。 πSNO,SANME(σCNAME='MATHS'(SSCC)) (4)检索选修课程号为C2或C4的学生学号。 πSNO(σCNO='C2'∨CNO='C4'(SC)) (5)检索至少选修课程号为C2或C4的学生学号。 π1(σ1=4∧2='C2'∧5='C4'(SC×SC)) 这里(SC×SC)表示关系SC自身相乘的乘积操作,其中数字1,2,4,5都为它的结果

数据库关系代数习题

2.现有关系数据库如下: 学生(学号,姓名,性别,专业,奖学金)。 课程(课程号,名称,学分)。 学习(学号,课程号,分数)。 用关系代数表达式实现下列1-4小题: 1. 检索"英语"专业学生所学课程的信息,包括学号、姓名、课程名和分数。 П学号,姓名,课程名,分数(σ专业='英语'(学生∞学习∞课程))。 2. 检索"数据库原理"课程成绩高于90分的所有学生的学号、姓名、专业和分数。 П学号,姓名,专业,分数(σ分数>90∧名称='数据库原理'(学生∞学习∞课程))。 3. 检索不学课程号为"C135"课程的学生信息,包括学号,姓名和专业。 П学号,姓名,专业(学生)-П学号,姓名,专业(σ课程号='C135'(学生∞学习))。 4. 检索没有任何一门课程成绩不及格的所有学生的信息,包括学号、姓名和专业。 П学号,姓名,专业(学生)-П学号,姓名,专业(σ分数<60(学生∞学习))。 5.检索选修全部课程的学生姓名 6.检索至少选修了李强同学所选修的全部课程的学生姓名。

3.现有关系数据库如下: 学生(学号,姓名,性别,专业、奖学金)。 课程(课程号,名称,学分)。 学习(学号,课程号,分数)。 用关系代数表达式实现下列1—4小题: 1. 检索“国际贸易”专业中获得奖学金的学生信息,包括学号、姓名、课程名和分数。 Π学号,姓名,课程名,分数(σ奖学金>0∧专业=国际贸易(学生∞学习∞课程))。 2. 检索学生成绩得过满分(100分)的课程的课程号、名称和学分。 Π课程号,名称,学分(σ分数=100(学习∞课程))。 3. 检索没有获得奖学金、同时至少有一门课程成绩在95分以上的学生信息,包括学号、姓名和专业。 Π学号,姓名,专业(σ奖学金<=0∧分数>95(学生∞学习))。 4. 检索没有任何一门课程成绩在80分以下的学生的信息,包括学号、姓名和专业。 Π学号,姓名,专业(学生)-Π学号,姓名,专业(σ分数<80(学生∞学习))。 4.设有关系S、SC和C,试用关系代数表达式完成下列操作。 S(snum,sname,age,sex),例:(1,“李强”,23,‘男’)是一条数据记录。SC(snum,cnum,score),例:(1,“C1”,83)是一条数据记录。C(cnum,cname,teacher) 例:(“C1”,“数据库原理”,“王华”)是一条数据记录。

第二章 关系数据库习题

第二章 关系数据库 一、选择题: 1、对于关系模型叙述错误的是 。 A .建立在严格的数学理论、集合论和谓词演算公式基础之一 B .微机DBMS 绝大部分采取关系数据模型 C .用二维表表示关系模型是其一大特点 D .不具有连接操作的DBMS 也可以是关系数据库管理系统 2、关系模式的任何属性 。 A .不可再分 B .可再分 C .命名在该关系模式中可以不唯一 D .以上都不是 3、在通常情况下,下面的表达中不可以作为关系数据库的关系的是 。 A .R1(学号,姓名,性别) B .R2(学号,姓名,班级号) C .R3(学号,姓名,宿舍号) D .R4(学号,姓名,简历) 4、关系数据库中的码是指 。 A .能唯一关系的字段 B .不能改动的专用保留字 C .关键的很重要的字段 D .能惟一表示元组的属性或属性集合 5、根据关系模式的完整性规则,一个关系中的“主码” 。 A .不能有两个 B .不能成为另外一个关系的外码 C .不允许为空 D .可以取值 6、关系数据库中能唯一识别元组的那个属性称为 。 A .唯一性的属性 B .不能改动的保留字段 C .关系元组的唯一性 D .关键字段 7、在关系R (R#,RN ,S#)和S (S#,SN ,SD )中,R 的主码是R#,S 的主码是S#,则S#在R 中称为 。 A .外码 B .候选码 C .主码 D .超码 8、关系模型中,一个码是 。 A .可由多个任意属性组成 B .至多由一个属性组成 C .可由一个或多个其值能唯一标识该关系模式中任意元组的属性组成 D .以上都不是 9、一个关系数据库文件中的各条记录 。 A .前后顺序不能任意颠倒,一定要按照输入的顺序排列 B .前后顺序可以任意颠倒,不影响库中的数据关系 C .前后顺序可以任意颠倒,但排列顺序不同,统计处理的结果可能不同 D .前后顺序不能任意颠倒,一定要按照码段的顺序排列 10、关系数据库管理系统应能实现的专门关系运算包括 。 A .排序、索引、统计 B .选择、投影、连接 C .关联、更新、排序 D .显示、打印、制表 11、同一个关系模型的任意两个元组值 。 A .不能全同 B .可全同 C .必须全同 D .以上都不是 12、自然连接是构成新关系的有效方法。一般情况下,当对关系R 和S 使用自然连接时,要求R 和S 含有一个或多个共有的 。 A .元组 B .行 C .记录 D .属性 13、设关系R (A ,B ,C )和S (B ,C ,D ),下列各关系代数表达式不成立的是 。 A .)()(S R D A ππ B .R S ? C .)()(S R B B ππ? D .R S 14、有两个关系R 和S ,分别包含15个和10个元组,则在R S ?,R-S ,R ?S 中不可能出现的元组数 目情况是 。 A .15,5,10 B .18,7,7 C .21,11,4 D .25,15,0 15、取出关系中的某些列,并消去重复元组的关系代数运算称为 。 A .取列运算 B .投影运算 C .连接运算 D .选择运算

关系代数习题

习题四 1. 试述关系模型的三个组成部分。 .关系是由(R,U,D,dom,F )组成,R 为关系名,关系结构、关系操作、关系完整性约束 U 位组成关系的元组属性集合,D 为属性集合U 来自的域,dom 为对象关系的映像集合,F 为属性依赖关系集合。关系操作为关系代数、关系演算、关系映象操作,此语言表达能和功能强大,约束:参照完整性约束,用户自定义约束,实体完整性约束。 2. 试述关系数据语言的特点和分类。 关系操作语言灵活方便、语言表达能力和功能强,其特点:操作一体化,操作方式一次一集合,高度的非过程化的操作,关系操作语言包括:关系代数语言、关系演算语言、基于映像 的语言,关系代数语言是对关系的运算来表达查询的语言,关系演算语言查询元组的应该满足的谓词条件的运算查询语言, 基于映像的语言具有关系代数与关系演算的语言的双重特点 语言查询!

3. 定义并解释下列术语,说明它们之间的联系与区别。 主码、候选码、外码。)1 在一个关系中某个属性(或属性组)能够唯一标识一个元组,则称该属性为候选码,选择其 R 中属性F 不是R 的码,h 为K 关系的主码,如果F 与h 相对应,中一个为主码,在关系 则称 F 为管系R 的外码 笛卡尔积、关系、元组、属性、域。2)给定一组域D1,D2,D3 3)关系、关系模式、关系数据库。 4. 试述关系模型的完整性规则。在参照完整性中,为什么外码属性的值也可以为空?什么 情况下才可以为空? 5. 试述等值连接与自然连接的区别和联系。 6. 对于学生选课关系,其关系模式为: 学生(学号,姓名,年龄,所在系); 课程(课程名,课程号,先行课); 选课(学号,课程号成绩)。 用关系代数完成如下查询。 求学过数据库课程的学生的姓名和学号。1) 求学过数据库和数据结构的学生姓名和学号。2)求没学过数

数据库关系代数除法讲解

数据库关系代数除法讲解 This manuscript was revised by JIEK MA on December 15th, 2012.

【数据库原理】关系代数篇——除法讲解 陈宇超编辑总结: 除法运算的一般形式示意图 如何计算R÷S呢,首先我们引进”象集”的概念,具体意义看下面的陈述即可理解 关系R和关系S拥有共同的属性B、C , R÷S得到的属性值就是关系R包含而关系S不包含的属性,即A属性 在R关系中A属性的值可以取{ a1,a2,a3,a4 } a1值对应的象集为 { (b1,c2) , (b2,c1) , (b2,c3) } a2值对应的象集为 { (b3,c7) , (b2,c3) } a3值对应的象集为 { (b4,c6) } a4值对应的象集为 { (b6,c6) } 关系S在B、C上的投影为 { (b1,c2) , (b2,c1) , (b2,c3) } 只有a1值对应的象集包含关系S的投影集,所以只有a1应该包含在A属性中为 设有教学数据库有3个关系(以下四小问均用除法的思想解决) 学生信息关系student(sno,sname,age,sex) 学生选课关系 sc(sno,cno,score) 学校课程关系 course(cno,cname)

S003C00269 S005C00277 S005C00398 有存在量词的谓词。 解决这类的除法问题一般采用双嵌套not exists来实现带全称量词的查询解决所谓forall的问题。 (1)检索所学课程包含了C002课程的学生学号 解关系代数表达式:∏sno ( sc÷∏cno(σcno=’C002’ (course) ) Sql语句 从略 (2)求至少选择了C001和C003两门课程的学生学号 解关系代数表达式:∏sno ( sc÷∏cno(σcno=’C001’ or cno=’C003’(course) ) Sql语句 select distinct sno from sc A where not exists ( select*from course B where cno in('C002','C003')and not exists ( select*from sc C where=and= ) ) 也可以采用自连接 select from (select*from sc where cno='C001')as s1, (select*from sc where cno='C003')as s2 where= (3)求至少学习了学生S003所学课程的学生学号 解关系代数表达式:∏sno ( sc÷∏cno(σsno=’S003’ (sc) ) select distinct sno from sc A where not exists ( select*from sc B where sno='S003'and not exists ( select*from sc C where=and= ) ) (4)求选择了全部课程的学生的学号 解此例的等价自然语义是,输出这样的学号,不存在某门课程在他的选课记录里没有选这门课 关系代数表达式:∏sno (sc÷∏cno(course) ) Sql语句 select distinct sno from sc A where not exists

第二章--关系数据库习题

第二章-关系数据库习题

、选择题: 1、 对于关系模型叙述错误的是 _________ 。 A .建立在严格的数学理论、集合论和谓词演算公式基础之一 B .微机DBMS 绝大部分采取关系数据模型 C ?用二维表表示关系模型是其一大特点 D ?不具有连接操作的 DBMS 也可以是关系数据库管理系统 2、 关系模式的任何属性 _________ 。 A .不可再分 B .可再分 C ?命名在该关系模式中可以不唯一 D ?以上都不是 3、 在通常情况下,下面的表达中不可以作为关系数据库的关系的是 ________ 。 A . R1 (学号,姓名,性别) B . R2 (学号,姓名,班级号) C . R3 (学号,姓名,宿舍号) D . R4 (学号,姓名,简历) 4、 关系数据库中的码是指 ________ 。 A ?能唯一关系的字段 B .不能改动的专用保留字 C ?关键的很重要的字段 D .能惟一表示元组的属性或属性集合 5、 根据关系模式的完整性规则,一个关系中的“主码” ___________ 。 A ?不能有两个 B .不能成为另外一个关系的外码 C ?不允许为空 D .可以取值 6、 关系数据库中能唯一识别元组的那个属性称为 ___________ 。 A ?唯一性的属性 B .不能改动的保留字段 C .关系元组的唯一性 D .关键字段 7、 在关系R ( R#,RN ,S#)和S (S#,SN ,SD )中,R 的主码是 R#,S 的主码是S#,_KU S#在 R 中称 为 ________ 。 A ?外码 B .候选码 C .主码 D .超码 8、 关系模型中,一个码是 ________ 。 A .可由多个任意属性组成 B ?至多由一个属性组成 C ?可由一个或多个其值能唯一标识该关系模式中任意元组的属性组成 D .以上都不是 9、 一个关系数据库文件中的各条记录 __________ 。 A ?前后顺序不能任意颠倒,一定要按照输入的顺序排列 B ?前后顺序可以任意颠倒,不影响库中的数据关系 C ?前后顺序可以任意颠倒,但排列顺序不同,统计处理的结果可能不同 D ?前后顺序不能任意颠倒,一定要按照码段的顺序排列 10、 关系数据库管理系统应能实现的专门关系运算包括 ____________ 。 A ?排序、索引、统计 B .选择、投影、连接 C ?关联、更新、排序 D .显示、打印、制表 11、 同一个关系模型的任意两个元组值 _________ 。 A .不能全同 B .可全同 C ?必须全同 D .以上都不是 12、 自然连接是构成新关系的有效方法。一般情况下,当对关系 R 和S 使用自然连接时,要求 R 和S 含 有一个或多个共有的 _________ 。 A .元组 B .行 C .记录 D .属性 13、 设关系R (A ,B ,C )和S ( B ,C ,D ),下列各关系代数表达式不成立的是 ____________ 。 A . A (R ) D (S ) B . R S C . B (R ) B (S ) D . R S 14、 有两个关系R 和S,分别包含15个和10个元组,则在R S ,R-S ,R 第二章关系数据库 S 中不可能出现的元组数

数据库关系代数

关系代数是一种抽象的查询语言,用对关系的运算来表达查询,作为研究关系数据语言的数学工具。 关系代数的运算对象是关系,运算结果亦为关系。关系代数用到的运算符包括四类:集合运算符、专门的关系运算符、算术比较符和逻辑运算符 比较运算符和逻辑运算符是用来辅助专门的关系运算符进行操作的,所以按照运算符的不同,主要将关系代数分为传统的集合运算和专门的关系运算两类。 传统的集合运算是二目运算,包括并、交、差、广义笛卡尔积四种运算。 ⒈并(Union) 设关系R和关系S具有相同的目n(即两个关系都有n个属性),且相应的属性取自同一个域,则关系R与关系S的并由属于R或属于S的元组组成。其结果关系仍为n目关系。记作: R∪S={t|t∈R∨t∈S} ⒉差(Difference) 设关系R和关系S具有相同的目n,且相应的属性取自同一个域,则关系R与关系S的差由属于R而不属于S的所有元组组成。其结果关系仍为n目关系。记作: R-S={t|t∈R∧t?S} ⒊交(Intersection Referential integrity) 设关系R和关系S具有相同的目n,且相应的属性取自同一个域,

则关系R与关系S的交由既属于R又属于S的元组组成。其结果关系仍为n目关系。记作: R∩S={t|t∈R∧t∈S} ⒋广义笛卡尔积(Extended cartesian product) 两个分别为n目和m目的关系R和S的广义笛卡尔积是一个(n+m)列的元组的集合。元组的前n列是关系R的一个元组,后m 列是关系S的一个元组。若R有k1个元组,S有k2个元组,则关系R和关系S的广义笛卡尔积有k1×k2个元组。

数据库原理第二章练习讲解

第二章关系数据库 一、选择题: 1、对于关系模型叙述错误的是。 A.建立在严格的数学理论、集合论和谓词演算公式基础之一 B.微机DBMS绝大部分采取关系数据模型 C.用二维表表示关系模型是其一大特点 D.不具有连接操作的DBMS也可以是关系数据库管理系统 2、关系模式的任何属性。 A.不可再分B.可再分 C.命名在该关系模式中可以不唯一D.以上都不是 3、在通常情况下,下面的表达中不可以作为关系数据库的关系的是。A.R1(学号,姓名,性别) B.R2(学号,姓名,班级号) C.R3(学号,姓名,宿舍号) D.R4(学号,姓名,简历) 4、关系数据库中的码是指。 A.能唯一关系的字段B.不能改动的专用保留字C.关键的很重要的字段D.能惟一表示元组的属性或属性集合 5、根据关系模式的完整性规则,一个关系中的“主码”。 A.不能有两个B.不能成为另外一个关系的外码 C.不允许为空D.可以取值 6、关系数据库中能唯一识别元组的那个属性称为。 A.唯一性的属性B.不能改动的保留字段C.关系元组的唯一性D.关键字段 7、在关系R(R#,RN,S#)和S(S#,SN,SD)中,R的主码是R#,S的主码是S#,则S#在R中称为。 A.外码B.候选码 C.主码D.超码 8、关系模型中,一个码是。 A.可由多个任意属性组成 B.至多由一个属性组成 C.可由一个或多个其值能唯一标识该关系模式中任意元组的属性组成D.以上都不是 9、一个关系数据库文件中的各条记录。 A.前后顺序不能任意颠倒,一定要按照输入的顺序排列 B.前后顺序可以任意颠倒,不影响库中的数据关系 C.前后顺序可以任意颠倒,但排列顺序不同,统计处理的结果可能不同D.前后顺序不能任意颠倒,一定要按照码段的顺序排列 10、关系数据库管理系统应能实现的专门关系运算包括。

关系代数运算习题

一、选择题 1关系代数运算可以分为两类:传统的集合运算和专门的关系运算?下面列出的操作符中,属于传统的集合运算是( A ) I .n(交)n .u(并)『x(广义笛卡儿积)w?一(差)v.n(投影)w选择) A)I、n、川和w B)川、w、V和w C)I、川、V和w D)都是 2、关系数据库管理系统能实现的专门关系操作包括(B) A、显来,打印和制表 B、选择,投影和连接 C、关联、更新和排序 D、排序、索引和统计 3、在关系数据基本操作中,从表中选项出满足某种条件的记录的操作称为( A ) A、选择 B、投影 C、连接 D、扫描 4、元组的集合在关系数据库中称为关系,一般来说,表示元组的属性或者最小属性组称为D A、字段 B、索引 C、标记 D、主键 5、在下面3个关系中 学生S (SNO , SNAME , SEX, AGE )课程 C (CNO , CNAME , CREDIT )学生选课SC (SNO, CNO , GRADE ) 要查找选修“数据库”课程的女学生的姓名,将涉及到关系(D) A、S B、C, SC C、S, SC DS, C, SC 6、对于关系数据库来讲,下面(C)说法是错误的。 A、每一列的分量是同一种类型数据,来自同一个域 B、不同列的数据可以出自同一个域 C、行的顺序可以任意交换,但列的顺序不能任意交换 关系中的任意两个元组不能完全相同 7、关系数据库中有3种基本操作,从表中取出满足条件的属性的操作是(A) A、选择 B、投影 C、连接 D、扫描 8、关系数据库在有3种基本操作,将具有共同属性的两个关系中的元组连接到一起,构成新表的操作称为(C ) A、选择 B、投影 C、连接 D、扫描 9 若D1={a1,a2,a3} , D2={b1,b2,b3},贝U D1*D2 集合中共有元组(C)个 A、 6 B、8 C、9 D、12 10下列(C)运算不是专门的关系运算 A、选择 B、投影 C、笛卡尔积 D、连接 11、如下两个关系R1和R2,它们进行运算后得到R3。(D ) R1 R2 B D E 1M I 2N J A__M R3 A 1 X M I D 1 Y M I

数据库第二章关系代数习题

1.设有如图所示的关系S 、SC 和C,试用关系代数表达式表示下列查询语句: S C SC (1) 检索”程军”老师所授课的课程号(C#)和课程名(CNAME)。 (2) 检索年龄大于21的男学生学号(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)。 (12)检索没有一门课程成绩不及格的学生学号,姓名。 答:本题各个查询语句对应的关系代数表达式表示如下: (1) ΠC#,CNAME (σTEACHER ='程军'(C)) (2) ΠS#,SNAME (σAGE>21^SEX ='男'(S)) (3) ΠSNAME (S (ΠS#,C#(SC )÷ΠC#( σTEACHER ='程军'(C)))) (4) ΠC#(C)-ΠC#(σSNAME ='李强'(S )∞ SC) (5) ΠS# (σ1=4^2≠5 (S C ×SC )) (6) ΠC#,CNAME (C ∞ (ΠS#,C#(SC )÷ΠS#(S ))) (7) ΠS# (SC ∞ΠC# (σTEACHER ='程军'(C))) (8) ΠS#,C#(SC )÷ΠC#(σC#=’K1’VC#=’K5’ (C )) (9) ΠSNAME (S ∞ (ΠS#,C#(SC )÷ΠC#(C))) (10) ΠS#,C#(SC )÷ΠC#(σC#=’2’ (S C )) (11) ΠS#,SNAME (S ∞ΠS#(SC ∞ (σCNAME ='C 语言'(C)))) (12)П学号,姓名(学生)-П学号,姓名(σ分数<60(学生∞学习))。

关系代数习题

习题四 1. 试述关系模型的三个组成部分。 关系结构、关系操作、关系完整性约束.关系是由(R,U,D,dom,F )组成,R 为关系名,U 位组成关系的元组属性集合, D 为属性集合U 来自的域,dom 为对象关系的映像集合, F 为属性依赖关系集合。关系操作为关系代数、关系演算、关系映象操作,此语言表达能和功能强大,约束:参照完整性约束,用户自定义约束,实体完整性约束。 2. 试述关系数据语言的特点和分类。 关系操作语言灵活方便、语言表达能力和功能强,其特点:操作一体化,操作方式一次一集 合,高度的非过程化的操作,关系操作语言包括:关系代数语言、关系演算语言、基于映像 的语言,关系代数语言是对关系的运算来表达查询的语言,关系演算语言查询元组的应该满 足的谓词条件的运算查询语言,基于映像的语言具有关系代数与关系演算的语言的双重特点 语言查询! 3. 定义并解释下列术语,说明它们之间的联系与区别。 1)主码、候选码、外码。 在一个关系中某个属性(或属性组)能够唯一标识一个元组,则称该属性为候选码,选择其 中一个为主码,在关系R 中属性 F 不是R 的码,h 为K 关系的主码,如果 F 与h 相对应,则称 F 为管系R 的外码 2)笛卡尔积、关系、元组、属性、域。 给定一组域D1,D2,D3 3) 关系、关系模式、关系数据库。 4. 试述关系模型的完整性规则。在参照完整性中,为什么外码属性的值也可以为空?什么 情况下才可以为空? 5. 试述等值连接与自然连接的区别和联系。 6. 对于学生选课关系,其关系模式为: 学生(学号,姓名,年龄,所在系); 课程(课程名,课程号,先行课); 选课(学号,课程号成绩)。 用关系代数完成如下查询。 1)求学过数据库课程的学生的姓名和学号。 2)求学过数据库和数据结构的学生姓名和学号。 3)求没学过数据库课程的学生学号。 4)求学过数据库的先行课的学生学号。

第二章 关系数据库基本原理

第二章关系数据库基本原理 一、选择题 1.关系数据表的关键字可由()字段组成。 A、一个 B、两个 C、多个 D、一个或多个 2.下列关于关系数据库叙述错误的是()。 A、关系数据库的结构一般保持不变,但也可根据需要进行修改 B、一个数据表组成一个关系数据库,多种不同的数据则需要创建多个数据库 C、关系数据表中的所有记录的关键字字段的值互不相同 D、关系数据表中的外部关键字不能用于区别该表中的记录 3.参照完整性规则:表的()必须是另一个表的主键的有效值,或者是空值。 A、候选键 B、外键 C、主键 D、主属性 4.关系数据库规范化是为了解决关系数据库中的()问题而引入的。 A、插入、删除和数据冗余 B、提高查询速度 C、减少数据操作的复杂性 D、保证数据的安全性和完整性 5.关系数据库是若干()的集合。 A、表(关系) B、视图 C、列 D、行 6.在关系模式中,实现“关系中不允许出现相同的元组”的约束是()约束。 A、候选键 B、主键 C、键 D、超键 7.约束“年龄限制在18~30岁之间”属于DBMS的()功能。 A、安全性 B、完整性 C、并发控制 D、恢复 8.反映现实世界中实体及实体间联系的信息模型是()。 A、关系模型 B、层次模型 C、网状模型 D、E-R模型 9.关系数据模型的3个组成部分中,不包括()。 A、完整性规则 B、数据结构 C、数据操作 D、并发控制 10.如何构造出一个合适的数据逻辑结构是()主要解决的问题。 A、关系数据库优化 B、数据字典 C、关系数据库规范化理论 D、关系数据库查询 11.学生社团可以接纳多名学生参加,但每个学生只能参加一个社团,从社团到学生之间的 联系类型是()。 A、多对多 B、一对一 C、多对一 D、一对多 12.关系模式的任何属性()。 A、不可再分 B、可以再分 C、命名在关系模式上可以不唯一 D、以上都不是 13.一个m:n联系转换为一个关系模式。关系的关键字为()。 A、某个实体的关键字 B、各实体关键字的组合 C、n端实体的关键字 D、任意一个实体的关键字 14.候选关键字的属性可以有()。 A、多个 B、0个 C、1个 D、1个或多个 15.关系模型中有三类完整性约束:实体完整性、参照完整性和域完整性。定义外部关键字 实体的是哪一类完整性()? A、实体完整性 B、域完整性 C、参照完整性 D、实体完整性、参照完整性和域完整性 16.设已知F={C→A,CG→D,CG→B,CE→A,ACD→B},从中去掉哪些函数依赖关系后得到 的新的函数依赖集合F1与F是等价的()。

数据库关系代数

数据库关系代数 (1)基本概念 属性和字段: 每个事物都有许多属性,每个属性的值范围称为一个域,所有对域都是原子数据(第一范式)。 相关术语 N元关系:R(D1,D2,D3。。。Dn)是一个N元素关系,其中关系属性的数目称为“元组”,元组的数目称为“基数”,即记录值。候选代码:如果关系中的属性或属性组的值可以唯一地标识元组 主机代码:可以选择任意候选代码作为主机代码 主属性:包含在任何候选代码中的属性称为主属性 完整代码:关系模型中的所有属性都是此关系模型的候选代码,称为完整代码 外部代码:关系模式中不是该关系代码的属性称为外部代码 ③三种类型: 基本表:实际存在的表 查询表:查询结果对应的表 视图表:由基本表和其他视图表导出的表,不是实际存在数据库中④完整性约束: 实体完整性:主属性A不能为空值 参照完整性:用实体之间的关系来描述,若F是关系R的外码,则F 或者是空值,或者是某个元组的主码值

用户定义完整性:根据具体关系数据的约束条件,比如数据范围等(2)关系五种基本运算 ①并:R,S具有相同的关系模式(元素相同,结构相同),记为R U S,返回由R或者S元组构成的集合组成 ②差:R,S具有相同的关系模式(元素相同,结构相同),记为R-S,右属于R但不属于S的元组组成 ③广义笛卡尔积:R×S由n目和m目的关系R,S组成一个(n+m)列的元组集合,若R有K1个元组,S有K2个元组,则R×S有K1*K2个元组 ④投影(π):从关系的垂直方向开始运算,选择关系中的若干列组成新的列。 ⑤选择(σ):选择从关系的水平方向进行元算,选择满足给定条件的元组组成新的关系。 (3)扩展的关系代数运算 ①交:R∩S=R-(R-S),R,S具有相同的关系模式 ②链接:链接分为θ链接,等值链接和自然链接 θ链接:从R,S的笛卡尔积中选择满足一定条件的元组 等值链接:当θ为“=”时为等值链接 自然链接:是一种特殊的等值链接,比较的分量必须是相同的属性组,并在结果集中去掉重复列,如果没有重复列,自然链接就转换为笛卡尔积 ③除:同时从水平方向和垂直方向进行运算,给定关系R(X,Y)和

数据库第二章关系代数习题

1?设有如图所示的关系S 、SC 和C,试用关系代数表达式表示下 列查询语句: ⑴ 检索”程军”老师所授课的课程号(C#)和课程名(CNAME)。 (2) 检索年龄大于21的男学生学号(S#)和姓名(SNAME)。 (3) 检索至少选修”程军”老师所授全部课程的学生姓名 (SNAME) o (4) 检索”李强”同学不学课程的课程号(C#)o (5) 检索至少选修两门课程的课程号 (S#)o (6) 检索全部学生都选修的课程的课程号 (C#)和课程名(CNAME) o (7) 检索选修课程包含”程军”老师所授课程之一的学生学号 (S#)o (8) 检索选修课程号为 k1和k5的学生学号(S#)o (9) 检索选修全部课程的学生姓名 (SNAME) o (10) 检索选修课程包含学号为 2的学生所选修课程的学生学号 (S#) o (11) 检索选修课程名为” C 语言”的学生学号(S#)和姓名(SNAME) o (12) 检索没有一门课程成绩不及格的学生学号,姓名。 答:本题各个查询语句对应的关系代数表达式表示如下 : (1) n C#,CNAME ( b TEACHER ='程军'(C)) (2) n S#,SNAME ( b AGE>2MSEX ='男'(S)) (3) n SNAME (S ;“"J ( n S#,C#(SC) *n C#( b TEACHER ='程军'(C)))) (4) n C #(C)- n C #( b SNAME ='李强(S) s SC) (5) n S# ( o-1=4A 2 * 5 (SC X SC) (6) n C #,CNAME (C S (n S #,C #(SC) *n s#(S)) ⑺ n S# (SC s n C# ( O TEACHER ='程军'(C))) (8) n S #,C #(SC) * n C #( o c#=*1vc#='K5' (C)) (9) n SNAME (S S (n S #,C #(SC) * n c#(c ))) (10) n S #,C #(SC) * n C #( O C #=2 (SC)) (11) n S#,SNAME (S s n S#(SC s ( O CNAME ='C 语言'(C)))) (12)n 学号,姓名(学生)-n 学号,姓名(O 分数<60(学生s 学习)) S# SNAME AGE SEX 1 李强 23 男 2 刘丽 22 女 5 张友 22 男 C# CNAME TEACHER k1 C 语言 王华 k5 数据库原理 程军 k8 编译原理 程军 SC

数据库 第二章 关系数据库习题

第二章关系数据库 一、单项选择题 1.在下列选项中,_A__不是基本关系的性质。 A.不同列应有不同的数据类型B.不同列应有不同的列名 C.行的顺序可以任意D.列的顺序可以任意 2.在关系模型中,一个关系只能有一个 D 。 A.候选码B.外码C.内码D.主码 3.在关系模型中,一个候选码 C 。 A.只能由两个以上的属性组成B.至多包含一个属性 C.可以由一个或多个属性组成D.必须包含关系的全部属性 4.设X是关系R的属性组,但不是R的主码,若X引用了关系S的主码Y,则称 C 。 A.X是S的外码B.Y是R的外码C.X是R的外码D.Y是S的外码5.设域D1、D2、D3分别有K1、K2、K3个元素,则D1?D2?D3的元组数为__A____。 A.K1? K2? K3B.K1+ K2+ K3C.(K1+ K2)?K3D.(K1+ K2)÷K3 6.关系数据库管理系统应能实现的专门关系运算包括 B 。 A.排序、索引、统计B.选择、投影、连接 C.关联、更新、排序D.显示、打印、制表 7.关系模式和关系数据库模式之间的关系是 D 。 A.关系模式是型,关系数据库模式是它的值 B.关系数据库模式是型,关系模式是它的值 C.关系模式是关系数据库模式的集合 D.关系数据库模式是关系模式的集合 8.关系和关系模式之间的关系是A。 A.关系模式是型,关系是它的值B.关系是型,关系模式是它的值 C.关系模式是关系的集合D.关系是关系模式的集合 9.关系数据库和关系数据库模式之间的关系是 B 。 A.关系数据库是型,关系数据库模式是它的值 B.关系数据库模式是型,关系数据库是它的值 C.关系数据库模式是关系数据库的集合 D.关系数据库是关系数据库模式的集合 10.关系和关系数据库之间的关系是 C 。 A.关系数据库是型,关系是它的值 B.关系是型,关系数据库是它的值 C.关系数据库是关系的集合 D.关系是关系数据库的集合

关系代数习题

小测验1 (一)单项选择题 1.关系模型基本的数据结构是(D) A.树B.图 C.索引 D.关系 2.关系数据库的查询语言是一种(C) A 过程性语言 B.第三代语言 c.非过程性语言 D.高级程序设计语言 3.关系模型中,实体完整性规则是(B) A.实体不允许是空实体 B.实体的主键值不允许是空值 c.实体的外键值不允许是空值 D.实体的属性值不允许是空值 4.关系数据库的数据操作分为两类(A) A.查询和更新 B.排序和索引c.插入和删除 D.修改和排序 5.在关系模型中,下列说法正确的为( D )。 A.关系中存在可分解的属性值 B. 关系中允许出现相同的元组 C.关系中考虑元组的顺序 D.元组中,属性理沦上是无序的,但使用时按习惯考虑列的顺序 6. 在关系模型中,下列说法正确的为(B) A.关系中元组在组成主键的属性上可以有空值 B.关系中元组在组成主键的属性上不能有空值 C.主键值起不了唯一标识元组的作用 D.关系中可引用不存在的实体 7.下列为非过程语言的为( C )。 A.汇编语言 B.PASCAL语言‘ C.关系查询语言D.C语言 8.设关系R、s、w各有10个元组,则这三个关系的笛卡尔积的基数为(C)A.10 B.30 C.1000 D.不确定(与计算结果有关) 9.关系代数中,一般联接操作由(A)组合而成。 A.笛卡尔积和选择 B.笛卡尔积、选择和投影 C.笛卡尔积和投影 D.投影和选择 10.设关系R和S的属性个数分别为r和s,那么(R x S)操作结果的属性个数为( A ) A.r十s B.r-s C.r×s D.max(r,s) 11.设关系R和s的结构相同,且各有100个元组,则这两个关系的并操作结果的元组个数为(D) A.100 B.小于等于100 C.200 D. 小于等于200 12.关系代数的交操作可以由(B)操作组合而成。 A.并和差 B.差C.选择 D.联接 13.如果两个关系没有公共属性,那么其自然联接操作(A) A.转化为笛卡尔积操作B.转化为联接操作 c.转化为外部并操作D.结果为空关系 14.设关系R和S的值如下:

相关文档
相关文档 最新文档