问题
单项选择题 共用题干题
某销售公司数据库中的关系零件为P(Pno,Pname,Sname,City,Qty),Pno表示零件号,Pname表示零件名称,Sname表示供应商,City表示所在地,Qty表示库存量。其函数依赖集F={Pno→Pname,(Pno,Sname)→Qty,Sname→City)。关系P为(1),存在冗余度大、修改操作的不一致、插入异常和删除异常的问题。若将P分解为(2),则可以解决这一问题。
空白(2)处应选择()
A.P1(Pname,Qty)、P2(Pno,Sname,City)
B.P1(Pno,PnamE.、P2(Sname,City'Qty)
C.P1(Pno,PnamE.、P2(Pno,Sname,Qty)、P3(Sname,City)
D.P1(Pno,PnamE.、P2(Pno,Qty)、P3(Sname,City)、P4(City,Qty)
答案
参考答案:C
解析:本题考查对数据库基本概念、数据库设计基础知识。原零件关系P存在非主属性对码的部分函数依赖:(Pno,Sname)→Qty,但是Pno→Pname、Sname→City,因此P∈1NF,而非2NF的。1NF主要存在冗余度大、修改操作的不一致、插入异常和删除异常的问题。分解后的关系模式P1、P2和P3消除了非主属性对码的部分函数依赖,同时不存在传递依赖,故达到3NF。