问题 单项选择题

某销售公司数据库的零件关系(零件号,零件名称,供应商,供应商所在地,库存量)如表4-14所示,其中同一种零件可由不同的供应商供应,一个供应商可以供应多种零件。零件关系的主键为 (34) ,该关系存在冗余以及插入异常和删除异常等问题。为了解决这一问题,需要将零件关系分解为 (35) ,分解后的关系模式可以达到 (36)

表4-14 零件关系表


零件号 零件名称 供应商 供应商所在地 库存量
010023 P2 S1 北京市海淀区苏州街58号 380
010024 P3 S1 北京市海淀区苏州街58号 1350
010022 P1 S2 长沙市五一大道717号 160
010023 P2 S2 长沙市五一大道717号 1280
010024 P3 S2 长沙市五一大道717号 3900
010022 P1 S3 北京市新城区朝阳街65号 2860

A.1NF

B.2NF

C.3NF

D.4NF

答案

参考答案:C

解析:

[分析]: 根据题意,同一种零件可由不同的供应商供应,一个供应商可以供应多种零件,因此,零件关系的主键为(零件号,供应商)。
在(35)空的4个选项中,选项A、B和D是有损连接的,且不保持函数依赖性,所以分解是错误的。例如,分解为选项A、B和D后,用户无法查询某零件由哪些供应商供应。
因为原零件关系存在非主属性对码的部分函数依赖“(零件号,供应商)→供应商所在地”,但是,“供应商→供应商所在地”,所以原零件关系模式是lNF。分解后的关系模式零件1、零件2和零件3消除了非主属性对码的部分函数依赖,同时不存在传递依赖,故达到了3NF。

多项选择题
单项选择题