数据库原理及应用第2版(雷景生编著)课后习题答案第2章
第二章 习题参考答案
一、选择题
1、D。
全码的定义:若关系中只有一个候选码,且这个候选码中包含全部属性,则该候选码为全码。所以D选项正确。
2、C。
关系有如下几条性质:
⑴、关系中的每一个属性值都是不可分解的
⑵、关系中不允许出现重复行
⑶、行列无序
⑷、列是同质的,即这一列具有相同的数据类型
由以上四点性质可知,C选项正确。
3、A。
关系的完整性有以下几条规则:
⑴、实体完整性规则:若属性A是基本关系R的主码所包含的属性,则属性A不能取空值。(注:主码不能为空,且主码整体取值也不空)
⑵、参照完整性规则:如果属性集K是关系模式R1的外键,同时K也是关系模式R2的属性,但不是R2的主键,那么K为R2的外键。在R2关系中,K的取值只允许有两种可能:①、空值;②、不为空时,等于R1关系中某个主键值。
⑶、用户自定义的完整性规则:用户针对具体的数据约束,设置完整性规则。
同第二章数据模型课后练习选择题第八题答案相同,所以A选项正确。
4、A。
关系数据库系统是支持关系模型的数据库系统,故关系数据库用关系实现数据之间的联系,所以A选项正确。
5、C。
在关系中,列是同质的,所以每一列的分量必须是相同的数据类型,故A选项不正确;
在关系中,行、列无序,所以列的顺序改变,关系的含义不会发生变化,故B选项不正确;
在关系中,不允许出现重复行,所以任意两个元祖的对应属性不允许相同,故C选项正确;
关系的性质中不包含“关系来自笛卡尔积的全部元祖”这条性质,故D选项不正确。
6、D。
关系代数的操作分为两类:
⑴、传统的集合操作:并、交、差、笛卡尔积
⑵、专门的关系运算:投影、选择、连接、除法
交:假设有关系R和S,R和S的交记为R∩S,由于R∩S=R-(R-S),因此交操作不是一个独立的操作,所以交操作不是一个基本操作。
除法:设关系R和S分别为r元和s元关系(设r>s>0),
①、T=π1,2,···,r-s(R);
②、W=(T×S)-R;
③、V=π1,2,···,r-s(W);
④、R÷S=T-V
所以除法也不是一个独立的操作,即不是一个基本操作。
故把交操作和除运算排除,D选项正确。
7、B。
组合操作即专门的关系运算,即投影、选择、连接、除法。故B选项正确。
8、C。
投影:对一个关系进行垂直分割,消去某些列和重复行,并重新安排列的顺序的操作
πA,C(R)为取属性值为A,C的两列组成,并消去重复行,所以A选项不正确。
π1,3(R)等价于πA,C(R),所以B,D选项不正确,C选项正确。
9、C。
笛卡尔积:设关系R和S的元数分别为r和s,则R×S是一个(r+s)元的集合,共有r×s个元祖。因为4+3=7,所以C选项正确。
10、B。
自然连接是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性组,并且在结果中把重复的属性列去掉。设关系R和S的公共属性是A1,A2,···,AK,则R和S的自然连接步骤为:
①、计算R×S;
②、挑选R和S中满足R.A1=S.A1,···,R. AK=S. AK的那些元祖;
③、去掉S. A1, S. A2,···,S. AK这些列;
题目中已明确指出这两个关系没有公共属性,若进行自然连接首先进行笛卡尔积的运算,而运算后不能删除具有相同属性的列,所以实际上就是进行笛卡尔积运算,故B选项正确。
二、综合题
1、
①、a、如果关系U和V具有不相同的属性列时,U∩V的最小和最大元组数量为0;
b、如果关系U和V具有相同的属性列时,
若m>n,则U∩V的最小元组数量为0,U∩V的最大元组数量为n;
若m<n,则U∩V的最小元组数量为0,U∩V的最大元组数量为m;
②、a、如果关系U和V具有不相同的属性列时,U∪V的最小和最大元组数量为0;
b、如果关系U和V具有相同的属性列时,
若m>n,则U∪V的最小元组数量为m,U∪V的最大元组数量为m+n;
若m<n,则U∪V的最小元组数量为n,U∪V的最大元组数量为m+n;
③、U∞V的最小元组数量为0,U∞V的最大元组数量为mn;
④、σF(U)×V的最小元组数量为0,σF(U)×V的最大元组数量为mn;
⑤、πL(R)-S的最小元组数量为0,πL(R)-S的最大元组数量为m。
2、分别对关系R、S的属性列C、D做投影。
④、第一步先做R╳S,为
A |
B |
R.C |
R.D |
S.C |
S.D |
E |
A1 |
B1 |
C1 |
D1 |
C1 |
D1 |
E1 |
A1 |
B1 |
C1 |
D1 |
C2 |
D2 |
E2 |
A1 |
B1 |
C2 |
D2 |
C1 |
D1 |
E1 |
A1 |
B1 |
C2 |
D2 |
C2 |
D2 |
E2 |
A1 |
B1 |
C3 |
D3 |
C1 |
D1 |
E1 |
A1 |
B1 |
C3 |
D3 |
C2 |
D2 |
E2 |
A2 |
B2 |
C1 |
D1 |
C1 |
D1 |
E1 |
A2 |
B2 |
C1 |
D1 |
C2 |
D2 |
E2 |
A2 |
B2 |
C2 |
D2 |
C1 |
D1 |
E1 |
A2 |
B2 |
C2 |
D2 |
C2 |
D2 |
E2 |
A3 |
B3 |
C1 |
D1 |
C1 |
D1 |
E1 |
A3 |
B3 |
C1 |
D1 |
C2 |
D2 |
E2 |
第二步找出满足条件(R.C=S.A)∧(R.D=S.B)的元组,为
A |
B |
R.C |
R.D |
S.C |
S.D |
E |
A1 |
B1 |
C1 |
D1 |
C1 |
D1 |
E1 |
A1 |
B1 |
C2 |
D2 |
C2 |
D2 |
E2 |
A2 |
B2 |
C1 |
D1 |
C1 |
D1 |
E1 |
A2 |
B2 |
C2 |
D2 |
C2 |
D2 |
E2 |
A3 |
B3 |
C1 |
D1 |
C1 |
D1 |
E1 |
3、
①、πC#,CNAME(σTEACHER=’lIU’(C))
②、πS#,SNAME(σSEX=’男’∧AGE>23(S))
③、πCNAME,TEACHER(σS#=’S3’(S∞SC))
④、πSNAME(σTEACHER=’lIU’ ∧SEX=’女’(S∞SC∞C))
⑤、πC#(C)-πC#(σSNAME=’WANG’(S∞SC))
⑥、πS#(σ1=4∧2≠5(SC ╳SC))
⑦、πC#,CNAME((πC#, S#(SC)÷πS#(S)) ∞C)
⑧、πS#,C#(SC)÷πC#(σTEACHER=‘LIU’(C))
4、
①、πOrd_no,Pname,Qty,Amount((σCid=’C006’ (Orders) ∞Products)
②、πCname((σPid=’P01’(Orders) ) ∞Customers)
③、πCname((πCid(σQty>500(Orders)∞πPid (σPrice=0.50 (Products)))) ∞Customers)
④、πCname(Customers)-πCname((πCid,Pid(σPid=’P01’(Orders))) ∞Customers)
⑤、πCid,Cname,Aid,Aname,Customers.City(σCustomers.city=Agents.city(Customers∞Orders ∞Agents))
⑥、πPid (((πCid(σcity=‘南京’(Customers)))╳(πAid(σcity=‘北京’(Agents))))∞Orders)
⑦、πCid,Pid(Orders)÷πPid (σPrice=1.00 (Products))