问答题
现有某图书销售数据库,其关系表结构如下:
图书表(图书编号,图书名称,出版社编号,出版社名称,出版时间,出版数量,版次)
图书销售表(罔书编号,销售日期,销售数量,书店编号,读者编号,读者姓名,读者电话)
书店表(书店编号,联系电话,所在城市编号,城市名称)
Ⅰ.系统所涉及的数据存在如下约束:
出版社可以出版多本图书,一本图书只能在一个出版社出版,在该系统记录的图书出版信息包括出版时间、版次及出版数量信息。
Ⅱ.一个书店可以出售多本图书给多个读者.每位读者可以从多个书店购买多本图书,一本图书可以通过多个书店出售给读者,书店把图书出售给读者后会在系统中记录售书日期和售书数量信息。
Ⅲ.每个书店只能位于一个城市,一个城市可以有多个书店。
问答题
| ①请根据以上信息画出合理的图书销售数据库的概念模型(用ER图表示)。 |
【正确答案】
【答案解析】①

【正确答案】
【答案解析】②图书销售表中,读者信息应该单独新建一张表,否则就会造成大量的数据冗余。
问答题
| ③给出该数据库符合3NF要求的全部关系模式,并指出关系模式中的全部主码和外码。 |
【正确答案】
【答案解析】③出版社表(出版社编号,出版社名称)主码:出版社编号
出版表(出版社编号,图书编号,出版时间,出版数量,版次)主码:(出版社编号,图书编号)
图书表(图书编号,图书名称)主码;图书编号
书店表(书店编号,联系电话,所在城市编号)主码:书店编号
城市表(所在城市编号,城市名称)主码:所在城市编号
读者表(读者编号,读者姓名.读者电话)主码:读者编号
图书销售表(图书编号,读者编号,销售日期,销售数量,书店编号)主码:(图书编号,读者编号)
[解析] 本题考查的主要是数据库设计优化,关系数据模型转换及规范化处理。一本图书只能在一个出版社出版,即出版社与图书是一对多的关系,一个书店可以出售多本图书给多个读者,每位读者可以从多个书店购买多本图书,一本图书可通过多个书店出售读者,即有图书、读者与书店都是多对多的关系,它们之间通过出售实体来联系。图书销售表中存在太多的冗余,应该化为更高的范式来消除不必要的冗余。
问答题
| ①在事务T2刚完成提交后,数据库中A、B、C的值各是多少? |
【正确答案】
【答案解析】①A=30;B=20;C=40;
问答题
②当事务T3结束后,给出该并发调度对应的日志文件,并说明此时A、B、C的值各是多少?
【正确答案】
【答案解析】②日志记录:30 20 80
A=30;B=20;C=40;
[解析] 本题考查的是事务的调度与回滚。T1,T2,T3的整个调度次序是先是T1把A加上10,此时A还是初值20,直到T3把A写入,此时A的值为30。而T2只是读了B,B的值未发生变化;之后的Begin—trans(T3) ,T2对B进行了改写并写入,所以B的值发生变化,但是T1虽然改变了C的值,但是却没有写入,事务在T2的时候就已经提交,所以C的值未变。
|