21-22数据库原理期末试题部分答案
模式规范化
有关系模式R(A,B,C,D,E),函数依赖集F={A->C,B->D,B->G,D->E}。
1、判断该关系模式最高属于第几范式,并说明理由。
2、按规范的分解方法将该关系模式分解为3NF,要求写出分解后每个模式的码和函数依赖集。
【答案】:
(1)、根据函数依赖集,得到R的码为(A,B)。其中A->C等属于非主属性对码的部分函数依赖,所以R不符合2NF标准,R最高属于1NF。
(2)、R分解为2NF得到关系模式R1、R2和R3:
R1(A,C) F={A->C} ,A是模式R1的码 符合3NF标准
R2(B,D,G,E)F={B->D,B->G,D->E}
B是模式R2的码 其中的B->D,D->E形成了非主属性E对码的传递依赖,所以R2不符合3NF
R3(A,B) (A,B)是模式R3的码 符合3NF标准
R2分解R4和R5:
R4(B,D,G)F={B->D,B->G}
B是模式R4的码,符合3NF标准
R5(D,E) F={D->E}
D是模式R5的码,符合3NF标准
最终分解为3NF形成4个关系模式R1、R3、R4、R5
有下面的数据库信息:
图书信息包括:书号、书名、作者、数量、出版社、单价、架号。出版社信息包括:出版社号、社名、地址、电话、邮编、信箱。读者信息包括:借书证号、姓名、单位。一个出版社可以出版多种书籍,但每本书只能在一个出版社出版,应有出版日期和责任编辑。每个读者可以借阅多本图书,每本图书可以有多人借阅。借阅信息包括:借书日期、还书日期、是否续借。
1、根据以上信息,画出ER图。可省略属性,但是联系的属性不能省略。
2、根据ER图转换为关系模式的一般原则,将上面的ER图转换为关系模式,并注明码和外码。
【答案】
图书(书号,书名,作者,数量,出版社,单价,架号,责任编辑)
主码:书号,外码:出版社
出版社(出版社号,社名,地址,电话,邮编,信箱)
主码:出版社号
读者(借书证号、姓名、单位)
主码:借书证号
借阅(借书证号,书号,借书日期,还书日期,是否续借)
主码:(借书证号,书号,借书日期),外码:借书证号,书号
基本表的建立
学生数据库有三个关系模式:学生表S(sno,sname,age)、课程表C(cno,cname,gredit)、选课表SC(sno,cno,score)。SC表中sno和cno联合作为主键,类型都是char(8),分别引用S的sno和C的cno;score是分数,类型为int,要求0<=score<=100。
1、用SQL语言写出创建SC表的语句。
2、用SQL语言在SC表的score属性上建立一个普通升序索引。
3、在S表上有一个触发事件为update或delete的触发器,请写出一条可触发该触发器执行的语句。
评分标准
【答案】(1)、
create table SC(
sno char(8),
cno char(8),
score int check(score>=0 and score<=100),
primary key(sno,cno),
foreign key(sno) references S(sno),
foreign key(cno) references C(cno),
)
(2)、
create index index_score on SC(score)
(3)、
delete from S where sno='00000001'
22-23数据库原理期末试题部分答案
规范化分析
1、有如下关系模式:R(A,B,C,D,E,F),函数依赖集F={A->C,B->D,B->E,E->F}。
试回答如下问题:
(1)写出该关系模式的侯选码。
(2)该关系模式最高满足第几范式?并说明理由。
(3)该关系模式在实际应用中会存在什么问题?
(4)如果该关系模式不满足3NF,将该关系模式分解为满足3NF的关系模式集。
【答案】(1)候选码为(A,B)
(2)由于存在非主属性对码的部分依赖(A->C),因此该关系模式最高为1NF;
(3)存在数据冗余、更新异常、插入异常、删除异常问题。
(4)分解为如下个模式:
R1(A,C) {A->C}
R2(B,D,E) { B->D,B->E }
R3(E,F) { E->F }
R4(A,B)
以上四个关系模式都属于3NF。
2、有如下关系模式:R(A,B,C,D,E),函数依赖集F={A->B,A->C,B->D,B->E}。如果将R分解为R1(A,C)和R2(B,D,E),试问该分解是否符合无损连接性,并说明理由。
【答案】将R分解为R1(A,C)和R2(B,D,E)不符合无损连接性,因为它们的交集不是任何一个分解关系的超码。这意味着分解后的关系模式可能会丢失或增加一些信息,无法恢复成原来的关系。