数据库第二章关系代数的习题集.doc
- 格式:doc
- 大小:135.50 KB
- 文档页数:9
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)。
关系代数补充习题(摘自数据库系统导论)单项选择: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、“并”操作在实际应用中可用于删除关系中的元组。
(错)。
第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(一)单项选择题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. 下面的选项不是关系数据库基本特征的是()。
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. 关系代数中的联接操作是由()操作组合而成。
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、对于关系模型叙述错误的是。
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、同⼀个关系模型的任意两个元组值。
一、设教学库中有三个关系:学生关系S(S#,SNAME,AGE,SEX)学习关系SC(S#,C#,GRADE)课程关系C(C#,CNAME,TEACHER)下面用关系代数表达式表达各个查询语句1.检索学习课程号为C2的学生学号与成绩。
2。
检索学习课程号为C2的学生学号与姓名。
3.检索选修课程名为MATHS的学生学号与姓名。
4。
检索选修课程号为C2或C4的学生学号.5.检索至少选修课程号为C2和C4的学生学号.6。
检索不学C2课的学生姓名与年龄.7。
检索学习全部课程的学生姓名。
解:1。
πS#,GRADE(σC#=‘C2’(SC))或π1,3(σ2=‘C2’(SC))2. πS#,SNAME(σC#=‘C2’(S︱×︱SC))3. πS#,SNAME(σCNAME=‘MATHS’( S︱×︱SC ︱×︱ C))4。
πS#(σC#=‘C2’∨C#=‘C4’(SC))5. π1(σ1=4∧2=‘C2’∧5=‘C4’(SC×SC))6。
πSNAME,AGE(S)-πSNAME,AGE(σC#=‘C2’( S︱×︱SC))7.学生选课情况:πS#,C#(SC)全部课程:πC#(C)学了全部课程的学生的学号用除操作,结果是学号S#集:πS#,C#(SC)÷πC#(C)从S#求学生姓名,可用自然联接和投影组合操作:πSNAME(S︱×︱(πS#,C#(SC)÷πC#(C)))二、设有一个数据库:学生关系模式:S(学号S#,姓名SNAME,年龄AGE,性别SEX)学生课程模式:SC(学号S#,课程号C#,成绩GRADE)课程关系模式:C(课程号C#,课程名CNAME,教师TEACHER)试用关系代数表达式表示下列查询语句:1.检索年龄大于20岁的男学生的学号、姓名。
2.检索田老师所授课程的课程号、课程名3。
检索至少选修两门课程的学生学号。
第二章关系数据库一、单项选择题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)。
数据库关系代数习题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、一个关系只有一个(D )A.候选码B.外码C.超码D.主码2、下面的选项不是关系数据库基本特征的是(A )。
A.不同的列应有不同的数据类型B.不同的列应有不同的列名C.与行的次序无关D.与列的次序无关3、关系模型中,一个码是(C )。
A.可以由多个任意属性组成B.至多由一个属性组成C.可有多个或者一个其值能够唯一表示该关系模式中任何元组的属性组成D.以上都不是4、自然联接是构成新关系的有效方法。
一般情况下,当对关系R和S是用自然联接时,要求R和S含有一个或者多个共有的(C)。
A.记录B. 行C. 属性D. 元组5、现有如下关系:患者(患者编号,患者姓名,性别,出生日期,所在单位)医疗(患者编号,医生编号,医生姓名,诊断日期,诊断结果)其中,医疗关系中的外码是(A )。
A.患者编号B.患者姓名C.患者编号和患者姓名D.医生编号和患者编号6、基本关系代数运算是(A)。
A.∪-×σπB.∪∩-σπC.∪∩×σπD.∪∩σπ7、设有关系R和S,在下列的关系运算中,(D)运算不要求R和S具有相同的元素,且它们对应属性的数据类型也相同。
A、R∪SB、R∩SC、R-SD、R×S8、在关系运算中,查找满足一定条件的元组的运算称之为( B )。
A、复制B、选择C、投影D、连接9、设关系R有R1个元组,关系S有R2个元组,则关系R和S连接后的关系有(D)个元组。
A、R1+R2B、≤R1+R2C、R1×R2D、≤R1×R210、在信息世界中,一个“属性”的域,对应于关系型数据库中“字段”的(D)。
A、集合B、名称C、值D、取值范围11、关系代数中的四个专门的关系运算符是(B )。
A、交、连接、自然连接、除法B、投影、连接、选择、除法C、投影、自然连接、笛卡尔积、除法D、投影、连接、选择、乘法12、在关系代数中,对一个关系做选择操作后,新关系的元组个数( A )原来关系的元组个数。
数据库课后习题第⼆章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.设有如图所示的关系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-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.现有关于班级、学生、课程的信息如下:描述班级的属性有:班级号、班级所在专业、入校年份、班级人数、班长的学号;描述学生的属性有:学号、姓名、性别、年龄;描述课程的属性有:课程号、课程名、学分。