文档库 最新最全的文档下载
当前位置:文档库 › 练习题-关系代数表达式

练习题-关系代数表达式

练习题-关系代数表达式

关系代数表达式练习题

学生管理系统中有学生表、课程表、成绩表、班级表

(1)学生表(学号,姓名,性别,出生年月,住址,电话,班级号)

(2)课程表(课程号,课程名,课时数,学分数)

(3)成绩表(学号,课程号,成绩)

(4)班级表(班级号,班级名,专业名,入学年,人数,班长学号)

写出下列操作的关系代数表达式

1.找出所有被学生选修了的课程号

2.找出班级名为“xxx”班级的女同学的个人基本信息。

3.找出姓李的学生的个人基本信息

4.查询“xxx”班级的班长基本信息

5.查询与李勇在同一班的学生的基本信息

6.查询所有管理类专业(如:工商管理、信息管理、旅游管理、管理科学与工

程等)学生的基本信息。

7.查询选修了课程名“xxx“的学生的学号和姓名

8.查询李勇所在班级的学生人数

9.找出“2007信管“班中没有选修课程“数据库“的学生的学号、姓名

10.列出“xxx“同学所修全部课程的名称和成绩

11.查询全体学生的学习信息,要求按学号排序

12.找出课程名为‘操作系统’的平均成绩、最高分、最低分

13.找出今天(或1月20日)过生日的学生学号、姓名和班级名

14.找出选修了全部课程的学生学号、姓名和班级

15.统计选修了课程名“xxx“的学生人数

16.统计每门课程的选课人数

17.求每个班学生每门课的平均成绩

18.查询选修课程中没有不及格分数的学生学号、姓名和班级

19.查询有3门课程不及格的学生的学号、姓名及所在的班级名

20.求2009信息管理专业学生中已选修过管理信息系统的先修课的学生姓名。

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

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(学生∞学习))。

关系代数运算练习答案

关系代数表达式: 由关系代数运算经有限次复合而成的式子称为关系代数表达式。 这种表达式的运算结果仍然是一个关系。可以用关系代数表达式表示对数据库的查询和更新操作。 关系代数(演算)要求掌握各种语句的应用 1:设教学数据库中有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'(S SC)) 由于这个查询涉及到两个关系S和SC,因此先对这两个关系进行自然连接,同一位学生的有关的信息,然后再执行选择投影操作。

此查询亦可等价地写成: πSNO,SNAME(S)(πSNO(σCNO='C2'(SC))) 这个表达式中自然连接的右分量为"学了C2课的学生学号的集合"。这个表达式比前一个表达式优化,执行起来要省时间,省空间。 (3)检索选修课程名为MATHS的学生学号与姓名。 πSNO,SANME(σCNAME='MATHS'(S SC C)) (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都为它的结果关系中的属性序号。 比较这一题与上一题的差别。 (6)检索不学C2课的学生姓名与年龄。 πSNAME,AGE(S)-πSNAME,AGE(σCNO='C2'(S SC))

关系代数习题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具有相同的元数,且它们的对应属性的数据类型也相同” 。

(完整版)大学数据库考试复习试题带答案

2019数据库期末复习内容 1.选择题 (1)(数据库)是存储在计算机内结构化的数据的集合 (2)下述关于数据系统正确的描述是(数据库系统减少了数据冗余)。 (3)数据库(DB)、与数据库系统(DBS)和数据库管理系统(DBMS)之间的关系是(DBS 包含DB 和DBMS )。(4)数据库管理系统的工作不包括(为定义的确据库提供操作系统)。 (5)用于对现实世界进行描述的工具是(数据模型)。 (6)在数据库的三级模式结构中,描述数据库中全局逻辑结构和特征的是(模式)。 (7)E-R图用来建立数据库的(概念模型)。 (8)下列模型中不能直接描述实体间多对多的联系的是(关系模型)。 (9)数据模型的三个要素是(数据结构、数据操作、完整性约束) (10)数据库的设计人员和用户之间沟通信息的桥梁是(实体联系图)。 (11)数据的独立性分为(逻辑独立性和物理独立性)。 (12)数据库通常是根据(数据模型)来分类的。 (13)关系数据库系统能实现专门的关系运算,包括(选择、投影、连接、除)。 (14)在关系模型中,下述关于关键字的说法正确的是(可以由一个或多个其值能唯一标识该关系模式中任何元组的属性组成)。 (15)被称为关系的两个不变性,由关系数据库系统自动支持的是(实体完整性和参照完整性)。 (16)在关系中不能出现相同元组的约束是通过(主码)来实现。 (17)下列数据模型中,数据独立性最高的是(关系模型). (18)规范化理论是关系数据库进行逻辑设计的理论依据。根据这个理论,关系数据库中的关系必须满足:每一属性都是(不可分解的)。 (19)关系数据库规范化是为解决关系数据库中(插入异常、删除异常和数据冗余)问题而引入的。 (20)在关系数据库中,任何二元关系模式的最高范式必定是(BCNF ) (21)若属性X函数依赖于属性Y时,则属性X与属性Y之间的关系是(多对一)。 (22)设有关系模式:部门(部门代码,部门名称,部门成员,部门经理)由于其中(部门成员)属性存在,使该关系不属于第一范式。 (23)若关系模式R中的属性都是主属性,则R最高属于(3NF )。 (24)若要彻底消除插入异常和删除异常,关系模式最低要属于(BCNF)。 (25)关系模式分解的无损连接和保持函数依赖两个特性之间的联系是(没有必然联系)。 (26)关系模式中数据依赖的存在,可能会导致成立蕴涵后者数据插入异常,这是指(该插入的数据未被插入)。(27)设要对关系模式R(学号,姓名,课程代码,课程名,课程成绩)进行分解,将其规范化到3NF,下列(B)是正确的规范化结果。B.R1(学号,姓名)R2(课程代码,课程名)R3 (学号,课程代码,课程成绩) (28)有如下关系R(是BCNF)。 (29)对用户访问数据库的权限加以限定是为了保护数据库的(安全性)。 (30)下面(可移植性)不是数据库系统必须提供的数据控制功能。 (31)数据库系统中,对存取权限定义为(授权)。 (32)在数据库的安全性控制中,为了保证用户只能存取他有权存取的数据,在授权的定义中,数据对象的(范围越小),授权子系统就越灵活。 (33)数据库安全性遭到破坏的情况属于(非法用户读取数据库中的数据)。 (34)数据库的(完整性)是指数据的正确性和相容性。 (35)数据完整性保护中的约束条件是指(值的约束和结构的约束)。 (36)实体完整性和参照完整性属于(静态关系约束)。 (37)数据类型、取值范围、空值约束属于(静态列级约束)。

关系代数及SQL语言的习题

针对书上的学生选课数据库S_T,用关系代数和SQL语言完成以下查询: 1、查询“CS”系所有学生的学号和姓名。 2、Slelect sno,sname from student where sdept =’CS’ 3、查询所有姓“刘”的学生的信息。 4、Select * from student where sname like ‘刘%’ 5、查询年龄在18至20岁之间的学生信息。 6、Select * from student where sage between 18 and 20 7、查询不在“CS”系也不在“MA”系的学生的所有信息。 8、Select * from student where sdept not in (‘CS’,’MA’) 9、查询“CS”系所有学生的平均年龄。 10、Select avg(sage) from student where sdept like ‘CS’ 11、查询课程名是以“系统”结尾的课程信息。 12、Select * from course where cname like ‘%系统’ 13、查询先行课为“6”号课程的课程信息。 14、Select * from course where cpno=6 15、查询间接先行课为“5”号课程的课程号及课程名。 16、Select , from c c1,c c2 where = and =5 17、Select cno ,cname from course where cpno in (select cno from course where cpno=5) 18、查询没有先行课的课程名。 19、Select cname from course where cpno is null 20、查询选修了“1”号课程的学生选课信息。 21、Select * from sc where cno=1 22、查询成绩为90分以上的学生姓名和课程名。 23、Select sname ,cname from s,c,sc where = and = and grade>=90 24、查询被选修了的课程号及课程名。

关系代数讲解与例题

关系代数 关系代数是关系数据库系统查询语言的理论基础。 关系代数的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. 试述关系模型的三个组成部分。 .关系是由(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.选择σ (1)查询年龄小于20岁的学生 σsage<20(student) (2)查询学号为201215122的学生 σsno=201215122(student) 2.投影 (1)查询学生姓名,和所在系 same,sdept(student) (2)查询选修了2号课程的学生学号 sno(σcno=‘2’2(student)) SQL语句 学生-课程数据库 学生表:学生(学号,姓名,性别,年龄,所在系)课程表:课程(课程号,课程名,先行课,学分)学生选课表:选课(学号,课程号,成绩) 二.创建数据库SQL 1.创建数据库 Create database 数据库名 On ( name =逻辑文件名, Filename=’物理文件名’, Size=初始文件大小, Maxsize=最大文件大小, Filegrowth=文件自动增量) Log on ( name =逻辑文件名, Filename=‘物理文件名’, Size=初始文件大小, Maxsize=最大文件大小, Filegrowth=文件自动增量) 例创建‘教务管理数据库’ Create database 教务管理数据库 On ( name =教务管理_dat, Filename=‘E:\SQL\教务管理_dat.mdf’,

Size=2, Filegrowth=1 ) Log on ( name =教务管理.log, Filename=‘E:\SQL\教务管理_log.ldf’, Size=5M, Filegrowth=10% ) 1.查看数据库属性 1)使用sp_helpdb查看数据库信息: sp_helpdb [数据库名] (2)使用sp_databases 查看可使用的数据库信息: sp_databases(显示所有可以使用的数据库名称和大小) (3)使用sp_helpfile查看数据库文件信息 sp_helpfile [文件名] 1.设置数据库选项 Alter database 数据库名 Set 选项 例设置教务管理数据库自动收缩 Alter database 教务管理数据库 Set auto_shrink on (自动收缩) 1.修改数据库大小 Alter database 数据库名 Add file 增加数据文件 Add log file 增加日志文件 Remove file 删除文件 Modify file 修改文件() 例 1.修改教务管理数据库,增加数据文件jwgl_dat1 Alter database 教务管理数据库 Add file ( Name=jwgl_dat1, Filename=‘E:\SQL\jwgl_dat1.ndf’, Size=2MB, Filegrowth=1MB ) 2.修改教务管理数据库 Alter database 教务管理数据库 Modify file (

关系代数运算习题

一、选择题 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. 试述关系模型的三个组成部分。 关系结构、关系操作、关系完整性约束.关系是由(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)求学过数据库的先行课的学生学号。

数据库原理作业(关系代数)

设有如下表所示的三个关系S 、C 和SC 。试用关系代数表达式表示下列查询语句: (1)检索“程军”老师所授课程的课程号(C #)和课程名(CNAME )。 (l )ΠC #,CNAME (σTEACHER=’程军’(C )) (2)检索年龄大于21岁男学生的学号(S #)和姓名(SNAME )。 (2)ΠS #,SNAME (σAGE>21∧SEX=’男’(S )) (3)检索至少选修“程军”老师所授全部课程的学生姓名(SNAME )。 (3)ΠSNAME (S (ΠS #,C #(SC )÷ΠC #(σTEACHER=’程军’(C )))) (4)检索“李强”同学不学课程的课程号(C #)。 (4)ΠC #(C )-ΠC #(σS NAME=’李强’(S )SC ) (5)检索至少选修两门课程的学生学号(S #)。 (5)ΠS #(σ[1]=[4]∧[2]≠[5](SC×SC ))

(6)检索全部学生都选修的课程的课程号(C#)和课程名(CNAME)。(6)ΠC#,CNAME(C(ΠS#,C#(SC)÷ΠS#(S))) (7)检索选修课程包含“程军”老师所授课程之一的学生学号(S#)。(7)ΠS#(SCΠC#(σTEACHER=’程军’(C))) (8)检索选修课程号为k1和k5的学生学号(S#)。 (8)ΠS#,C#(SC)÷ΠC#(σC#=’k1’∨C#=’k5’(C)) (9)检索选修全部课程的学生姓名(SNAME)。 (9)ΠSNAME(S(ΠS#,C#(SC)÷ΠC#(C))) (10)检索选修课程包含课程号为k2的学生学号(S#)。 (10)ΠS#,C#(SC)÷ΠC#(σC#=’k2’(C)) 或ΠS#(σC#=’k2’(SC)) (11)检索选修课程名为“C语言”的学生学号(S#)和姓名(SNAME)。(11)ΠS#,SNAME(SΠS#(SC(σCNAME=’C语言’(C)))

关系代数习题-1

第1章复习题 1.数据库系统是采用了数据库技术的计算机系统,数据库系统由数据库、数据库管理系统、应用系统和()。 A.系统分析员 B.程序员 C.数据库管理员 D.操作员 2.数据库(DB),数据库系统(DBS)和数据库管理系统(DBMS)之间的关系是()。 A.DBS包括DB和DBMS B.DBMS包括DB和DBS C.DB包括DBS和DBMS D.DBS就是DB,也就是DBMS 3.下面列出的数据库管理技术发展的三个阶段中,没有专门的软件对数据进行管理的是()。I.人工管理阶段II.文件系统阶段III.数据库阶段 A.I 和II B.只有II C.II 和III D.只有I 4.下列四项中,不属于数据库系统特点的是()。 A.数据共享 B.数据完整性 C.数据冗余度高 D.数据独立性高 5.数据库系统的数据独立性体现在()。 A.不会因为数据的变化而影响到应用程序 B.不会因为数据存储结构与数据逻辑结构的变化而影响应用程序 C.不会因为存储策略的变化而影响存储结构 D.不会因为某些存储结构的变化而影响其他的存储结构 6.描述数据库全体数据的全局逻辑结构和特性的是()。 A.模式 B.内模式 C.外模式 D. 7.要保证数据库的数据独立性,需要修改的是()。 A.模式与外模式 B.模式与内模式 C.三级模式之间的两层映射 D.三层模式 8.要保证数据库的逻辑数据独立性,需要修改的是()。 A.模式与外模式之间的映射 B.模式与内模式之间的映射 C.模式 D.三级模式

9.用户或应用程序看到的那部分局部逻辑结构和特征的描述是()模式。 A.模式 B.物理模式 C.子模式 D.内模式 10.下述()不是DBA数据库管理员的职责。 A.完整性约束说明 B.定义数据库模式 C.数据库安全 D.数据库管理系统设计 11.概念模型是现实世界的第一层抽象,这一类模型中最著名的模型是()。 A.层次模型 B.关系模型 C.网状模型 D.实体-关系模型 12.区分不同实体的依据是()。 A.名称 B.属性 C.对象 D.概念 13.关系数据模型是目前最重要的一种数据模型,它的三个要素分别是()。 A.实体完整性、参照完整性、用户自定义完整性 B.数据结构、关系操作、完整性约束 C.数据增加、数据修改、数据查询 D.外模式、模式、内模式 14.在()中一个结点可以有多个双亲,结点之间可以有多种联系。 A.网状模型 B.关系模型 C.层次模型 D.以上都有 15.()的存取路径对用户透明,从而具有更高的数据独立性、更好的安全保密性,也简化了程序员的工作和数据库开发建立的工作。 A.网状模型 B.关系模型 C.层次模型 D.以上都有 1 .数据库数据具有__________、__________和__________三个基本特点。(问答题) 答案 永久存储有组织可共享 4 .数据库管理系统是数据库系统的一个重要组成部分,它的功能包括__________、__________、__________、__________。(问答题) 答案 数据定义功能数据操纵功能数据库的运行管理数据库的建立和维护功能

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

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.SQL数据查询语句中的HAVING子句与WHERE子句的作用是相同的。 2.在关系代数运算中,基本的运算是并,交(差),笛卡尔积,选择,投影。 3.一个关系只有一个候选码(键)。 4.实体完整性规则是对外键的约束,参照完整性规则是对主键的约束。 5.按照索引记录的存放位置,索引可以分为聚集索引和非聚集索引。 6.跟基本表一样,视图中也存储有实实在在的数据。 7.SQL语言的中文名称为结构化数据(查询)语言。 8.专门的关系运算包括选择运算、投影运算和笛卡尔积运算。 9.假设有关系R和S,关系代数表达式R-(R-S)表示的是R∪S。 10.在关系数据库中,把数据表示成二维表,每一个二维表称为一个实体。 11.SQL语言集数据查询、数据操作、数据定义和数据控制功能于一体,语句ALTER TABLE属于数据查询语句。 12.一个关系数据库文件中的各条记录前后顺序可以任意颠倒,不影响库中的数 据关系。 13.同一个关系中不能出现两个以上相同的属性名。 14.在SQL的SELECT语句中,SELECT子句能实现关系代数中的投影运算。 15.设关系R(A,B,C)和S(A,D),与自然连接R∞S等价的关系代数表达式是∏ A,B,C,D(R×S)。 16.关系模型定义了域完整性、实体完整性和参照完整性三类数据约束。 17.从关系模式中指定若干个属性组成新的关系的运算称为投影。 18.关系中关键字必须指定为第一列。 19.如果关系R2的外部关系键X与关系R1的主关系键相符,则外部关系键X的 每个值必须在关系R1中主关系键的值中找到,或者为空,这是关系的参照完整性规则。 20.视图对应于三级模式结构中的(外)模式。 21.在关系代数中,从两个关系中找出相同元组的运算称为差运算。 22.关系数据模型上的关系运算分为关系代数和关系演算两种。 23.当对两个关系R和S进行自然连接运算时,要求R和S含有一个或多个共有 的属性。 24.在关系模型中,关系的码(键)只能是一个属性。 25.如果两个关系没有公共属性,那么其自然联接操作结果为空关系。 26.同一个关系模型的任意两个元组值不能完全相同。

第二章 关系数据库习题

第二章 关系数据库 一、选择题: 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. 先做习题 2(1~3 题) 1. (1)简述关系代数中并、交、差、选择、投影、连接、除的定义。答:并:关系 R 与关系 S的并由属于 R 或属于 S的所有元素组成。 差:关系 R 与关系 S 的差由属于 R 而不属于 S 的所有元素组成。交:关系 R 与关系 S的交即属于 R 又属于 S的所有元素组成。选择:选择是从行的角度进行的运算,选出满足条件的那些记录构成原关系的一个子集。 投影:投影是从列的角度进行运算,所得到属性列个数通常比原关系少,或者属性列 的排列顺序不同。 连接:两个关系中的记录按一定条件横向结合,生成一个新的关系。除:R中的属性包含 S中的属性, R 中的有些属性不出现在 S中。 (2) (3) 等值连接:当算术比较值为“ =”时,是一种特殊的也是最为常用的θ 连接,等值连接是从关系 R 与关系 S 的广义笛卡尔积中选取 i,j 属性值相等的元组。自然连接是一种特殊的等值连接,它要求二个关系中进行比较分量i, j 必须是相同属 性组,并且在结果中去掉了重复的属性列。 2. 设教学库中有三个关系:学生关系 S(S#,SNAME ,AGE ,SEX)学习关系 SC(S#, C#, GRADE)课程关系 C(C# , CNAME ,TEACHER) 请用关系代数表达式表达各个查 询语句 1.检索学习课程号为 C2 的学生学号与成绩。 答:∏ s#,grade(σ c=c2(SC × C)) 2.检索学习课程号为 C2 的学生学号与姓名。 答:∏ s#,sname(σ c=c2(S× C)); 3,检索选修课程 答:∏ c 选修( C 3 已知 R 关系与 S 关系

相关文档