问题 问答题

现有某图书数据库,其关系表结构如下:
图书表(图书编号,图书名称,出版社编号,出版社名称,出版时间,出版数量,版次)
图书销售表(图书编号,销售日期,销售数量,书店编号,读者编号,读者姓名,读者电话)
书店表(书店编号,联系电话,所在城市编号,城市名称)
该系统所涉及的数据存在以下约束:
①出版社可以出版多种图书,一本图书只能在一个出版社出版,在该系统记录的图书出版信息包
括出版时间,版次及出版数量信息。
②一个书店可以出售多本图书给多个读者,每个读者可以从多个书店购买多本图书,一本图书可
以通过多个书店出售给读者,书店把图书出售给读者后会在系统中记录售书日期和售书数量信息
③每个书店只能位于一个城市,一个城市可以有多个书店。
根据以上要求回答下列问题:
①以图书销售表为例说明原数据库设计的不合理之处。
②给出该数据库符合3NF要求的全部关系模式,并指出关系模型中的全部主码和外码。

答案

参考答案:①图书销售表中,读者信息应该单独新建一张表,否则会造成大量数据冗余。
②关系模式如下:
出版社表(出版社编号,出版社名称)主码:出版社编号
出版表(出版社编号,图书编号,出版时间,出版数量,版次)
主码(出版社编号,图书编号)
图书表(图书编号,图书名称)主码:图书编号
书店表(书店编号,联系电话,所在城市编号)主码:所在城市编号
城市表(所在城市编号,城市名称)主码:所在城市编号
读者表(读者编号,读者姓名,读者电话)主码:读者编号
图书销售表(图书编号,读者编号,销售日期,销售数量,书店编号)
主码:(图书编号,读者编号)

选择题
单项选择题