问题
单项选择题 共用题干题
仓库关系模式(1),为了解决这一问题,需要将仓库关系分解为(2)。
空白(2)处应选择()
A.仓库1(仓库号,地址)和仓库2(仓库号,电话,商品号,库存量)
B.仓库1(仓库号,地址,电话)和仓库2(商品号,库存量)
C.仓库1(仓库号,电话)和仓库2(仓库号,地址,商品号,库存量)
D.仓库1(仓库号,地址,电话)和仓库2(仓库号,商品号,库存量)
答案
参考答案:D
解析:仓库关系存在冗余、插入异常和删除异常,以及修改操作的不一致。例如,仓库号为“12”的商品有三种,其地址就要重复三次,如下表所示,故仓库关系存在冗余。仓库关系空白(2)处的正确答案为D。为了解决仓库关系模式存在的问题,需要进行模式分解。其中,选项A分解存在的问题是仓库2不属于第三范式,因为存在非主属性对码的部分函数依赖,即仓库号→电话。选项B分解存在的问题是分解有损连接,即分解的新关系模式仓库1和仓库2无法恢复到原关系。选项C分解存在的问题与A类同,分析略。选项D分解是即保持函数依赖,又无损连接,分解的结果如下:仓库1仓库2