【软考|软件设计师】 商品关系,仓库关系,主键?外键?

某公司销售数据库的商品、仓库关系模式及函数依赖集F1、F2如下: 商品(商品号,商品名称,生产商,单价),F1=商品号→商品名称,商品号→生产商,商品号→单价,商品关系的主键是___(1)___。仓库(仓库号,地址,电话,商品号,库存量),F2=仓库号→(地址,电话),(仓库号,商品号)→库存量。仓库关系的主键是___(2)___,外键是__(3)____。 仓库关系模式_(4)_____,为了解决这一问题,需要将仓库关系分解为__(5)____。

 (1)  商品关系的主键是 ___商品号________

 商品的函数依赖集     F1=商品号→商品名称,商品号→生产商,商品号→单价 

从函数依赖集来看,商品号决定商品关系的全属性,所以商品号是商品关系的主键

(2)  仓库关系的主键是____仓库号,商品号_________

(3) 仓库关系的外键是______商品号________

仓库关系的函数依赖集    F2=仓库号→(地址,电话),(仓库号,商品号)→库存量

从函数依赖集来看,仓库号,商品号决定仓库关系的全属性,故仓库号,商品号

是仓库关系的主键,又由于商品号是商品关系的主键,故商品号是仓库关系的外键

(4) 仓库关系模式___A_____

      A. 存在冗余,插入异常和删除异常,以及修改操作的不一致

      B. 不存在冗余,但存在插入异常和删除异常

     C. 不存在修改操作的不一致,但存在冗余和插入异常

     D. 不存在冗余,插入异常,但存在删除异常和修改操作的不一致  

                                                                仓库关系

仓库号地址电话商品号库存量
12高新路6号8601100024168
12高新路6号8601100025568
12高新路6号8601230023398
13友谊路6号86021500042600
13友谊路6号86021600051218

存在冗余,例如仓库号为12的商品有三种,其地址重复了三次

(5) 为了解决(4)中出现的问题,需要将仓库关系分解为___D____

   A. 仓库1 (仓库号,地址) 和仓库2 (仓库号,电话,商品号,库存量)

   B. 仓库1 (仓库号,地址,电话) 和仓库2 (商品号,库存量)

  C. 仓库1 (仓库号,电话) 和仓库2 (仓库号,地址,商品号,库存量)

  D. 仓库1 (仓库号,地址,电话) 和仓库2 (仓库号,商品号,库存量)

选项A存在的问题是仓库2不属于第三范式,即存在非主属性对码的部分函数依赖,

即仓库号—————>电话

第三范式:在第二范式基础之上,消除非主属性对键的传递依赖

选项 B存在的问题是该分解有损连接,即分解的新关系模式仓库1和仓库2无法恢复到原来的关系

选项C存在的问题与选项A存在的问题一样

选项D为本题的正确答案

                                                                    仓库1

仓库号地址电话
12高新路6号8601
13高新路6号8602

                                                                   仓库2

                      

仓库号商品号库存量
12100024168
12100025568
12230023398
131500042600
131600051218

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值