数据库第二章关系代数习题(1)
第2章关系数据库习题参考答案
第2章关系数据库习题参考答案1、试述关系模型的三个组成部分。
(46页)答:关系模型由关系数据结构、关系操作集合和关系完整性约束三部分组成。
2、试述关系数据语言的特点和分类。
(47页)答:关系数据语言可以分为三类:A、关系代数语言。
B、关系演算语言:元组关系演算语言和域关系演算语言。
C、SQL:具有关系代数和关系演算双重特点的语言。
这些关系数据语言的共同特点是,语言具有完备的表达能力,是非过程化的集合操作语言,功能强,能够嵌入高级语言中使用。
2、定义并理解下列术语,说明它们联系与区别:(P46---50页)(1)域,笛卡尔积,关系,元组,属性(2)主码,候选码,外部码(3)关系模式,关系,关系数据库3、试述关系模型的完整性规则(53页),在参照完整性中,为什么外部码属性也可以为空?什么情况下才可以为空?(55页)答:实体完整性规则是指若属性A是基本关系R的主属性,则属性A不能取空值。
(P55页)若属性(或属性组)F是基本关系R的外码,它与基本关系S的主码Ks相对应(基本关系R和S不一定是不同的关系),则对于R中每个元组在F上的值必须为:●或者取空值(F的每个属性值均为空值);●或者等于S中某个元组的主码值。
即属性F本身不是主属性,则可以取空值,否则不能取空值。
5.设有一个SPJ数据库,包括S,P,J,SPJ四个关系模式:1)求供应工程J1零件的供应商号码SNO:πSno(σSno=‘J1’(SPJ))2)求供应工程J1零件P1的供应商号码SNO:πSno(σSno=‘J1’∧Pno=‘P1‘(SPJ))3)求供应工程J1零件为红色的供应商号码SNO:πSno(σPno=‘P1‘(σCOLOR=’红‘(P)∞SPJ))4)求没有使用天津供应商生产的红色零件的工程号JNO:πJno(SPJ)- πJNO(σcity=‘天津’∧Color=‘红‘(S∞SPJ∞P)5)求至少用了供应商S1所供应的全部零件的工程号JNO:πJno,Pno(SPJ)÷πPno(σSno=‘S1‘(SPJ))(见P62页例6)6.试述等值连接与自然连接的区别和联系。
(完整版)数据库系统原理与设计(第2版)万常选版第2章关系模型与关系代数课后答案
3.简述如下概念,并说明它们之间的联系与区别:。
(1)域,笛卡尔积,关系,元组,属性答:域:域是一组具有相同数据类型的值的集合。
笛卡尔积:给定一组域D1,D2,…,Dn,这些域中可以有相同的。
这组域的笛卡尔积为:D1×D2×…×Dn={(d1,d2,…,dn)|di?Di,i=1,2,…,n }其中每一个元素(d1,d2,…,dn)叫作一个n元组(n-tuple)或简称元组(Tuple)。
元素中的每一个值di叫作一个分量(Component)。
关系:在域D1,D2,…,Dn上笛卡尔积D1×D2×…×Dn的子集称为关系,表示为R(D1,D2,…,Dn)元组:关系中的每个元素是关系中的元组。
属性:关系也是一个二维表,表的每行对应一个元组,表的每列对应一个域。
由于域可以相同,为了加以区分,必须对每列起一个名字,称为属性(Attribute)。
(2)超码,主码,候选码,外码答:超码:对于关系r的一个或多个属性的集合A,如果属性集A可以唯一地标识关系r中的一个元组,则称属性集A为关系r的一个超码 (superkey) 。
候选码:若关系中的某一属性组的值能唯一地标识一个元组,则称该属性组为候选码(Candidate key)。
主码:若一个关系有多个候选码,则选定其中一个为主码(Primary key)。
外码:设F是基本关系R的一个或一组属性,但不是关系R的码,如果F与基本关系S 的主码Ks相对应,则称F是基本关系R的外码(Foreign key),简称外码。
基本关系R称为参照关系(Referencing relation),基本关系S称为被参照关系(Referenced relation)或目标关系(Target relation)。
关系R和S可以是相同的关系。
(3)关系模式,关系,关系数据库答:关系模式:关系的描述称为关系模式(Relation Schema)。
第2章习题解1
习题一、单项选择题1.A 2.C 3.B 4.C 5.A 6.B 7.B 8.B 9.C 10.C二、填空1、关系中主码的取值必须惟一且非空,这条规则是实体完整性规则。
2、关系代数中专门的关系运算包括:选择、投影、连接和除法,主要实现查询类操作。
3、关系数据库的关系演算语言是以谓词演算为基础的DML语言。
4、关系数据库中,关系称为表,元组亦称为行,属性亦称为列。
5、数据库描述语言的作用是定义数据库。
6、一个关系模式可以形式化地表示为R(U,D,dom,F)。
7、关系数据库操作的特点是一次一集合式操作。
8.数据库的所有关系模式的集合构成关系数据库模型,所有的关系集合构成关系数据库。
9、在关系数据模型中,两个关系R1与R2之间存在1:m的联系,可以通过在一个关系R2中的外键或外码或外部关键字在相关联的另一个关系R1中检索相对应的记录。
10、将两个关系中满足一定条件的元组连接到一起构成新表的操作称为θ-连接操作。
三、简单、计算或查询1、试述关系模型的三要素内容。
解:(1)关系模型的数据结构——关系关系模型的数据结构:非常单一,在用户看来,关系模型中数据的逻辑结构是一张二维表。
但关系模型的这种简单的数据结构能够表达丰富的语义,描述出现实世界的实体以及实体间的各种联系。
(2)关系模型的关系操作:关系模型给出了关系操作的能力,它利用基于数学的方法来表达关系操作,关系模型给出的关系操作往往不针对具体的RDBMS语言来表述。
关系模型中常用的关系操作包括:选择(select)、投影(project)、连接(join)、除(divide)、并(union)、交(intersection)、差(difference)等查询(query)操作和添加(insert)、删除(delete)、修改(update)等更新操作两大部分。
查询的表达能力是其中最主要的部分。
早期的关系操作能力通常用代数方式或逻辑方式来表示,分别称为关系代数和关系演算。
第2章关系代数补充作业及答案(选做)
关系代数补充习题(摘自数据库系统导论)单项选择:1. 若关系中的某一属性组的值能唯一地标识一个元组,则称该属性组为________。
(1)主码(2)候选码(3)主属性(4)外码2.________由数据结构、关系操作集合和完整性约束三部分组成。
(1)关系模型(2)关系(3)关系模式(4)关系数据库3.SQL 语言属于________。
(1)关系代数语言(2)元组关系演算语言(3)域关系演算语言(4)具有关系代数和关系演算双重特点的语言4.关系演算是用________来表达查询要求的方式。
(1)谓词(2) 关系的运算(3)元组(4)域5.实体完整性要求主属性不能取空值,这一点可以通过________来保证。
(1)定义外码(2)定义主码(3)用户定义的完整性(4)由关系系统自动6.一组具有相同数据类型的值的集合称为________。
(1)关系(2)属性(3)分量(4)域7.在一个关系中,不能有相同的________。
(1)记录(2)属性(3)分量(4)域8.关系是________。
(1)型(2)静态的(3)稳定的(4)关系模型的一个实例9.所谓空值就是________的值。
(1)数值0 (2)空的字符串(3)未知的值(4)任何值10.集合R 与S 的差表示为________。
(1){t|t∈R∨t∈S} (2){t|t∈R∧フt∈S} (3) {t|t∈R∧t∈S}(4) {trts|tr∈R ∧ts∈S}问答题2.1 本章中,我们声称并、交、积和(自然)连接都具有交互性和结合性。
证明之。
2.2 在Codd 最初定义的八个操作符中,并、差、积、选择和投影可以被认为是基本的。
试用这五种基本操作来表示自然连接、交和除。
2.3 如果A 和B 没有共同的属性,则A JOIN B 等价于A TIMES B。
对其进行证明。
如果A 和B 有相同的表头,则上述表达式等价于什么?2.4 证明2.2 中提到的五个基本操作符是基本的(证明任意一个不能被其余四个来表示)。
数据库原理 第二章 关系数据库期末习题与答案
1、一个关系只能有一个()。
A.超码B.外码C.候选码D.主码正确答案:D2、在教务管理数据库中,关系数据库模式为S(SNO,SN,Sex,Age,Dept),SC(SNO,CNO,SCORE),S为学生关系,SC为选课关系,则分数大于等于60分的学生学号的关系代数为()A.B.C.D.正确答案:C3、有两个关系R和S,分别含有15个和10各元组,则在RUS,R-S,RnS中不可能出现的元组情况是()A.15,5,10B.18,7,7C.21,11,4D.25,15,0正确答案:B4、关系运算中花费时间可能最长的是()A.选取B.投影D.差正确答案:C二、填空题1、传统集合运算执行交、并、差运算的时候,参与运算的关系必须是()的关系。
正确答案:相容2、当对两个关系R和S进行自然连接运算时,要求R和S含有一个或多个共有的()。
正确答案:域或属性3、实体的完整性是对()的约束。
正确答案:主码或主键4、参照完整性规则是对()的约束。
正确答案:外键或外码5、根据关系规范化的要求,关系模式的任何属性()。
正确答案:不可再分或唯一三、判断题1、关系代数的运算对象和运算结果都是关系。
(对)2、关系R中有n条元组,关系S中有m条元组,则关系R和关系S的广义笛卡尔乘积上有n+m条元组。
(错)3、从关系规范化的角度,籍贯可以作为关系模式的属性。
(错)4、关系表中的元组是可以交换顺序的。
(对)5、“并”操作在实际应用中可用于删除关系中的元组。
(错)。
数据库关系代数运算例题
数据库关系代数运算例题(原创版)目录1.数据库关系代数概念2.关系代数运算分类3.关系代数运算例题a.并运算b.交运算c.差运算d.笛卡尔积e.投影运算f.选择运算g.连接运算h.自然连接正文一、数据库关系代数概念数据库关系代数是一种操作数据库中关系的数学方法,它可以在关系数据库中进行数据查询和数据处理。
关系代数基于数学集合代数概念,将数据库中的表看作是关系,通过对关系的操作实现对数据的操作。
二、关系代数运算分类关系代数运算主要分为以下几类:1.并运算:对两个关系进行并操作,返回一个新关系,包含属于任意一个关系的元组。
2.交运算:对两个关系进行交操作,返回一个新关系,包含既属于第一个关系又属于第二个关系的元组。
3.差运算:对两个关系进行差操作,返回一个新关系,包含属于第一个关系但不属于第二个关系的元组。
4.笛卡尔积:对两个关系进行笛卡尔积操作,返回一个新关系,包含所有可能的元组组合。
5.投影运算:对一个关系进行投影操作,返回一个新关系,包含原关系中的部分属性列。
6.选择运算:对一个关系进行选择操作,返回一个新关系,包含满足给定条件的元组。
7.连接运算:对两个关系进行连接操作,返回一个新关系,包含满足连接条件的元组。
8.自然连接:对两个关系进行自然连接操作,返回一个新关系,包含满足自然连接条件的元组。
三、关系代数运算例题1.并运算例题:设有学生表(学号,姓名,性别)和课程表(课程号,课程名),求所有学生的信息。
解答:使用并运算,将学生表和课程表进行并操作,得到一个新关系,包含所有学生的信息以及课程信息。
2.交运算例题:设有学生表(学号,姓名,性别)和成绩表(学号,成绩),求学生的姓名和成绩。
解答:使用交运算,将学生表和成绩表进行交操作,得到一个新关系,包含学生的姓名和成绩。
设有学生表(学号,姓名,性别)和课程表(课程号,课程名),求学生的信息,但不包括选修“数据库原理”课程的学生。
解答:使用差运算,将学生表和课程表进行差操作,得到一个新关系,包含不属于选修“数据库原理”课程的学生的信息。
数据库第二章关系代数的习题集.doc
1.设有如图所示的关系S、SC和C,试用关系代数表达式表示下列查询语句:S C SCS# SNAME AGE SEX1 李强23 男2 刘丽22 女5 张友22 男C# CNAME TEACHERk1 C语言王华k5 数据库原理程军k8 编译原理程军S# C# GRADE1 k1 832 k1 855 k1 922 k5 905 k5 845 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(一)单项选择题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. 小于等于20012.关系代数的交操作可以由(B)操作组合而成。
A.并和差 B.差C.选择 D.联接13.如果两个关系没有公共属性,那么其自然联接操作(A)A.转化为笛卡尔积操作B.转化为联接操作c.转化为外部并操作D.结果为空关系14.设关系R和S的值如下:B)A.1 B.2 C.3 D.415.在14题中,操作结果的元组个数是()。
第二章关系数据库习题
第二章关系数据库习题第二章关系数据库习题一、选择题1.关系数据库管理系统应能实现的专门关系运算包括( )。
A.排序、索引、统计B.选择、投影、连接C.关联、更新、排序D.显示、打印、制表2.关系模式中,一个关键字是( )。
A.可由多个任意属性组成B.至少由一个属性组成C.可由一个或多个其值能唯一标识该关系模式中任何元组的属性组成D.以上都不是3.同一个关系模型的任两组值( )。
A.不能全同B.可全同C.必须全同D.以上都不是4.设有属性A,B,C,D,以下表示中不是关系的是( )。
A .R(A)B.R(A,B,C,D)C.R(A×B×C×D) D.R(A,B)5.关系模式的任何属性( )。
A.不可再分B.可再分C.命名在该关系模式中不唯一D.以上都不是6. 一个数据库文件中的各条记录( )。
A.前后顺序不能任意颠倒,一定要按照输入的顺序排列B.前后顺序可以任意颠倒,不影响库中的数据关系C.前后顺序可以任意颠倒,但排列顺序不同,统计处理的结果就可能不同D.前后顺序不能任意颠倒,一定要按照关键字段值的顺序排列7.在关系代数的传统集合运算中,假定有关系R和S,运算结果为W。
如果W中的元组属于R,或者属于S,则W为①运算的结果。
如果W中的元组属于R 而不属于S,则W为②运算的结果是。
如果W中的元组既属于R又属于S,则W为③的运算结果.A.笛卡尔积B.并C.差D.交8.在关系代数的专门关系运算中,从表中取出若干属性的操作称为①;从表中选出满足某种条件的元组的操作称为②;将两个关系中具有共同属性的值的元组连接到一起构成新表的操作称为③.A.选择B. 投影 C .连接 D.扫描9.自然连接是构成关系的有效方法。
一般情况下,当对关系R和S 使用自然连接时,要求R 和S含有一个或多个共有的( )。
A.元组B.行C.记录D.属性10.在关系R(R#,RN,S#)和S(S#,SN,SD)中,R的主码是R#,S的主码是S#,则S#在R中称为( )。
(完整版)数据库第二章关系代数习题
1.设有如图所示的关系S、SC和C,试用关系代数表达式表示下列查询语句:S C SCS# SNAME AGE SEX1 李强23 男2 刘丽22 女5 张友22 男C# CNAME TEACHERk1 C语言王华k5 数据库原理程军k8 编译原理程军S# C# GRADE1 k1 832 k1 855 k1 922 k5 905 k5 845 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、关于关系模型,下列叙述不正确的是()。
A. 一个关系至少要有一个候选码B. 列的次序可以任意交换C. 行的次序可以任意交换D. 一个列的值可以来自不同的域2、下列说法正确的是()。
A. 候选码都可以唯一地标识一个元组B. 候选码中只能包含一个属性C. 主属性可以取空值D. 关系的外码不可以取空值3、关系操作中,操作的对象和结果都是()。
A. 记录B. 集合C. 元组D. 列4、假设存在一张职工表,包含“性别”属性,要求这个属性的值只能取“男”或“女”,这属于()。
A. 实体完整性B. 参照完整性C. 用户定义的完整性D. 关系不变性5、有两个关系R(A, B, C)和S(B, C, D),将R和S进行自然连接,得到的结果包含几个列()A. 6B. 4C. 5D. 2二、判断题1、关系模型的一个特点是,实体以及实体之间的联系都可以使用相同的结构类型来表示。
()2、关系模型中,非主属性不可能出现在任何候选码中。
()3、关系模式是对关系的描述,关系是关系模式在某一时刻的状态或内容。
()三、填空题1、在关系模型中,关系操作包括查询、____________、____________和_____________等。
2、关系模型的三类完整性约束是指______________、_______________和_____________。
3、关系模型包括8种查询操作,其中__________、_________、并、________和笛卡儿积是5种基本操作,其他操作可以用基本操作定义和导出。
4、职工(职工号,姓名,年龄,部门号)和部门(部门号,部门名称)存在引用关系,其中________________是参照关系,____________是外码。
四、综合题假设有一个数据库包含以下关系模式:Teacher(Tno, Tname, Tage, Tsex)Department(Dno, Dname, Tno)Work(Tno, Dno,Year, Salary)教师表Teacher由教师代码Tno、教师名字Tname、教师年龄Tage、教师性别Tsex组成。
(完整版)数据库第二章关系代数习题
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 ( ^TEACHER ='程军'(C))⑵ n S#,SNAME ( O -AGE>21ASEX ='男'(S))n SNAME (S ^*^ ( n S#,C#(SC) *n c#( b TEACHER ='程军 '(C))))(4) n C #(C)- n c#(b SNAME ='李强(S) g SC) (5) n S# ( O -1=4A 2土5 (SC X SC)(6) n C#,CNAME (C g (n S #,C #(SC ) *n s%S)) (7) n S# (SC^°n C# ( ^TEACHER ='程军 '(C))) (8) n S#,C#(SC) *n c# o C#='K1'VC#='K5' (C)) (9) n sNAME (S g (n S #,C #(SC) *n c#(c ))) (10) n S #,C #(SC ) *n c#( o c#=2 (SC))(11) n S#,SNAME (S ^n S#(SC g ( a CNAME ='C 语言 '(C))))(12)n 学号,姓名(学生)-n 学号,姓名(a 分数<60(学生g 学习))2. 现有关系数据库如下: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.关系是关系数据库的集合11.属性取空值的含义是 D 。
A .属性值为0B .属性值为空集合C .属性值为空格D .属性的值不知道12. C 称为关系模式。
关系代数习题
小测验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. 小于等于20012.关系代数的交操作可以由(B)操作组合而成。
A.并和差 B.差C.选择 D.联接13.如果两个关系没有公共属性,那么其自然联接操作(A)A.转化为笛卡尔积操作B.转化为联接操作c.转化为外部并操作D.结果为空关系14.设关系R和S的值如下:B)A.1 B.2 C.3 D.415.在14题中,操作结果的元组个数是()。
数据库第二章关系代数习题
1.设有如图所示的关系S、SC和C,试用关系代数表达式表示下列查询语句:S C SCS# SNAME AGE SEX1 李强23 男2 刘丽22 女5 张友22 男C# CNAME TEACHERk1 C语言王华k5 数据库原理程军k8 编译原理程军S# C# GRADE1 k1 832 k1 855 k1 922 k5 905 k5 845 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)。
关系代数作业参考答案
∏CNO,CNAME,SNO(C ∞SC) ÷ ∏SNO(S) 8. 检索选修课程包含LIU老师所教授课程的学
生学号
∏CNO,SNO(SC) ÷ ∏CNO(σTNAME=‘LIU’(C))
精选课件
14
图书管理系统关系模型: B(BN,T,A,P)图书表:书号,书名,作者,出版社 S(N,C,LN)学生表:姓名,班级和借书证号 L(LN,BN,D)借书表:借书证号,书号,借书日期 1、写出查询“2008年1月1日(20080101)以前
23
此课件下载可自行编辑修改,供参考! 感谢您的支持,我们努力做得更好!
2. ∏SNO(σJNO=’J1’ ∧PNO=’P1’(SPJ)) 3. ∏SNO(σJNO=’J1’ (SPJ) ∞(σColor=’红’
(P))
4. ∏JNO(J)- ∏JNO(σCITY=’天津’ (S) ∞SPJ ∞(σColor=’红’ (P))
5. ∏JNO,PNO(SPJ) ÷∏PNO(σSNO=’S1’(SPJ))
1关系代数习题课1找出选修网络方向女同学名单2求选修15164课程的学生姓名和专业方向3求选修数据库原理与应用课程的学生姓名4同时选修人工智能及编译技术的学生名单5没有被任何人选修的课程名6没有选修任何课程的学生性别和姓名7至少选修了002号学生选修的全部课程的学生学号8求所有课程被选修的情况列出课程号课程名先行课学分学号和成绩9求每个学生没有选修的课程列出学号课程号1
思考题:找出银行中最大的帐户余额
ACCOUNT表
∏ balance(ACCOUNT)-∏3(σ3<6(ACCOUNT × ACCOUNT))
精选课件
11
P66 2-14
S(SNO,SNAME,AGE,SEX,SDEPT) SC(SNO,CNO,GRADE) C(CNO,CNAME,CDEPT,TNAME)
数据库关系代数习题完整版
数据库关系代数习题Document serial number【NL89WT-NY98YT-NC8CB-NNUUT-NUT108】1.现有关系数据库如下:学生(学号,姓名,性别,专业,奖学金)。
课程(课程号,名称,学分)。
学习(学号,课程号,分数)。
用关系代数表达式实现下列1-4小题:1.检索"英语"专业学生所学课程的信息,包括学号、姓名、课程名和分数。
π学号,姓名,课程名,分数(б专业=英语(学生学习课程))2.检索"数据库原理"课程成绩高于90分的所有学生的学号、姓名、专业和分数。
π学号,姓名,专业,分数(б分数>90Λ名称=数据库原理(学生学习课程))3.检索不学课程号为"C135"课程的学生信息,包括学号,姓名和专业。
π学号,姓名,专业(学生)—π学号,姓名,专业(б课程号=C135(学生学习))4.检索没有任何一门课程成绩不及格的所有学生的信息,包括学号、姓名和专业。
π学号,姓名,专业(学习)—π学号,姓名,专业(б分数>=60(学生学习))2.现有关系数据库如下:学生(学号,姓名,性别,专业、奖学金)。
课程(课程号,名称,学分)。
学习(学号,课程号,分数)。
用关系代数表达式实现下列1—4小题:1.检索“国际贸易”专业中获得奖学金的学生信息,包括学号、姓名、课程名和分数。
π学号,姓名,专业(б奖学金>OΛ专业=国际贸易(学生学习课程))2.检索学生成绩得过满分(100分)的课程的课程号、名称和学分。
π课程号,名称,学分(б成绩=100(学生学习课程))3.检索没有获得奖学金、同时至少有一门课程成绩在95分以上的学生信息,包括学号、姓名和专业。
π课程号,名称,学分(б奖学金=OΛ成绩>95(学生学习课程))4.检索没有任何一门课程成绩在80分以下的学生的信息,包括学号、姓名和专业。
π学号,姓名,专业(б成绩>80(学生学习))3.设有如图所示的关系S、SC和C,试用关系代数表达式表示下列查询语句:S? C? SC(1)检索”程军”老师所授课的课程号(C#)和课程名(CNAME)。
数据库课后习题
数据库课后习题第⼆章1.设有数据库S(Sno,Sname,Sage,Ssex)C(Cno,Cname, Cpno) SC(Sno,Cno,Grade)试⽤关系代数表达式表⽰⼀下查询要求:1.查询选修了课程号为C2的学⽣号;πSno(σCno=‘2’(SC))2.查询选修数据库课程的⼥学⽣的学⽣号;πSno(σCname=‘DB’∧Ssex=‘⼥’(S C SC))3.查询⾄少选修C1和C3课程的学⽣号;πSno,Cno(SC)÷πCno(σCno=‘C1’∨Cno=‘C3’(C))4.查询⾄少选修⼀门先⾏课号为C5的学⽣姓名;πSname(σCpno=‘5’(C) SC πSno,Sname(S))第三章本章习题51.SELECT SNAME,CITYFROM S;2.SELECT PNAME,COLOR,WEIGHTFROM P;3.SELECT DISTINCT(JNO)FROM SPJWHERE SNO=…S1?;4.SELECT P.PNAME,SPJ.QTYFROM P,SPJWHERE P.PNO=SPJ.PNO AND SPJ.JNO=…J2?;5.SELECT DISTINCT PNOFROM SPJWHERE SNO IN (SELECT SNOFROM SWHERE CITY=…上海?);6.SELECT JNAMEFROM J,SPJ,SWHERE J.JNO=SPJ.JNO ANDSPJ.PNO=P.PNO ANDSPJ.SNO=S.SNO7.SELECT JNOFROM SPJWHERE NOT EXISTS (SELECT * FROM S WHERE SPJ.SNO=S.SNOAND S.CITY=…天津?);8.UPDA TE PSET COLOR=…蓝?WHERE COLOR=…红?;9.UPDA TE SPJSET SNO= (3)WHERE SNO=‘S5’ANDJNO=…J4?AND PNO=…P6?;10.DELETEFROM SPJWHERE SNO=…S2?;DELETEFROM SWHERE SNO=…S2?;11.INSERT INTO SPJV ALUES(S2,P4,J6,200);习题11CREA TE VIEW SPJ_SANJIANAS SELECT SNO,PNO,QTYFROM SPJWHERE JNO=(SELECT JNOFROM JWHERE JNAME=…三建?);1.SELECT PNO,QTYFROM SPJ_SANJIAN;2.SELECT PNO,QTYFROM SPJ_SANJIANWHERE SNO=…S1?;习题121.GRANT INSERTON TABLE STO 张勇WITH GRANT OPTION;2.GRANT SELECT,UPDA TE(QTY)ON TABLE SPJTO 李天明;习题41.SELECT SNO FROM SPJWHERE JNO=…J1?;2.SELECT SNO FROM SPJWHERE JNO=…J1? AND PNO=…P1?;3.SELECT SNO FROM SPJ,PWHERE JNO=…J1? AND SPJ.PNO=P.PNO AND COLOR=…红?;4.SELECTJNOFROM JWHERE NOT EXISTS( SELECT * FROM SPJ,S,PWHERE SPJ.JNO=J.JNO ANDSPJ.SNO=S.SNO AND SPJ.PNO=P.PNO ANDS.CITY=…天津? AND P.COLOR=…红?);1.查询所有⽐…李三?年龄⼤的学⽣姓名,年龄和性别。
关系代数练习题
一、二章习题一、选择题1、数据库中,数据的物理独立性是指:A、DB和DBMS的相互独立B、用户程序与DBMS的相互独立C、用户的应用程序与存储在磁盘上的数据库中的数据相互独立;D、应用程序与数据库中数据的逻辑结构相互独立。
2、数据库技术采用分级方法将数据库的结构划分成多个层次,是为了提高数据库的-------和---------:A、数据共享B、逻辑独立性;C、管理规范性;D、物理独立性;3、在数据库系统中,通常采用三级模式来描述数据库,其中①-----是用户与数据库的接口,是应用程序可以见到的数据描述,②------是对数据整体的③------的描述,而④-----描述了数据的⑤-----。
A、外模式;B、概念模式;C、逻辑结构;D、内模式;E、层次结构;F、物理结构;4、在数据库的体系结构中,数据库存储结构的改变会引起内模式的改变。
为使数据库的模式保持不变,从而不必修改应用程序,须改变模式与内模式之间的映像。
这样,使数据库具有_____A、数据独立性B、逻辑独立性C、物理独立性;D、操作独立性。
5、现实世界中客观存在并能相互区别的事物为:A、实体B、实体集;C、字段;D、记录。
6、现实世界中事物的特征在信息世界中称为A、实体B、实体标识符C、属性;D、关键码。
7、采用二维表格结构表达实体类型及实体间联系的数据模型是A、层次模型;B、网状模型;C、关系模型;D、对象模型。
8、DB、DBMS及DBS三者间的关系是A、DB包括DBMS、DBSB、DBS包括DB和DBMS;C、DBMS包括DB、DBSD、DBS与DB、DBMS无关。
9、数据库系统中,用_____描述全部数据的整体逻辑结构。
A、外模式B、存储模式C、内模式D、概念模式。
10、数据库系统中,用户使用的数据视图用____描述,该视图是用户和数据库系统之间的接口。
A、外模式B、存储模式;C、内模式;D、概念模式。
11、在数据库中,产生数据不一致的根本原因是A、数据存储量大B、没有严格保护数据C、未对数据进行完整性控制D、数据冗余。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.现有关系数据库如下:
学生(学号,姓名,性别,专业,奖学金)。
课程(课程号,名称,学分)。
学习(学号,课程号,分数)。
用关系代数表达式实现下列1-4小题:
1. 检索"英语"专业学生所学课程的信息,包括学号、姓名、课程名和分数。
π学号,姓名,课程名,分数(б专业=英语(学生⋈学习⋈课程))
2. 检索"数据库原理"课程成绩高于90分的所有学生的学号、姓名、专业和分数。
π学号,姓名,专业,分数(б分数>90Λ名称=数据库原理(学生⋈学习⋈课程))
3. 检索不学课程号为"C135"课程的学生信息,包括学号,姓名和专业。
π学号,姓名,专业(学生)—π学号,姓名,专业(б课程号=C135(学生⋈学习))
4. 检索没有任何一门课程成绩不及格的所有学生的信息,包括学号、姓名和专业。
π学号,姓名,专业(学习)—π学号,姓名,专业(б分数>=60(学生⋈学习))
2.现有关系数据库如下:
学生(学号,姓名,性别,专业、奖学金)。
课程(课程号,名称,学分)。
学习(学号,课程号,分数)。
用关系代数表达式实现下列1—4小题:
1.检索“国际贸易”专业中获得奖学金的学生信息,包括学号、姓名、课程名和分数。
π学号,姓名,专业(б奖学金>OΛ专业=国际贸易(学生⋈学习⋈课程))
2.检索学生成绩得过满分(100分)的课程的课程号、名称和学分。
π课程号,名称,学分(б成绩=100(学生⋈学习⋈课程))
3. 检索没有获得奖学金、同时至少有一门课程成绩在95分以上的学生信息,包括学号、姓名和专业。
π课程号,名称,学分(б奖学金=OΛ成绩>95(学生⋈学习⋈课程))
4. 检索没有任何一门课程成绩在80分以下的学生的信息,包括学号、姓名和专业。
π学号,姓名,专业(б成绩>80(学生⋈学习))
3.设有如图所示的关系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)检索没有一门课程成绩不及格的学生学号,姓名。