为什么要讨论函数依赖? 16
16
设有库存关系 仓库号地点设备号「设备名库存数量 WH1北京D1投景仪 10 WH1北京 D2 计算机 15 WH2上海D2计算机 W五3 州 D2 计算机 WH3广州D1投景仪 8 ◆数据冗余问题 ◆数据更新问题 ◆数据插入问题 今象》 ◆数据删除问题
17 设有库存关系: 数据冗余问题 数据更新问题 数据插入问题 数据删除问题
为什么会出现以上种种操作异常现象呢? 因为这个关系模式没有设计好,在它的 某些属性之间存在着“不良”的函数依赖 如何改造这个关系模式?克服以上种种问题, 就是我们这一章要解决的根本问题,也是我 们要讨论函数依赖的根本原因 18
18 为什么会出现以上种种操作异常现象呢? 因为这个关系模式没有设计好,在它的 某些属性之间存在着“不良”的函数依赖。 如何改造这个关系模式?克服以上种种问题, 就是我们这一章要解决的根本问题,也是我 们要讨论函数依赖的根本原因
模式分解 解决各种操作异常现象的方法就是 进行模式分解,即把一个关系模式分解 成两个或多个关系模式,在分解的过程 中消除那些“不良”的函数依赖,从而 获得好的关系模式。 19
19 模式分解 解决各种操作异常现象的方法就是 进行模式分解,即把一个关系模式分解 成两个或多个关系模式,在分解的过程 中消除那些“不良”的函数依赖,从而 获得好的关系模式
分解举例 刚才提到的库存关系模式,我们可以把其分解为: 仓库(仓库号,地点) 设备(设备号,设备名) 库存(仓库号,设备号,库存数量)
20 分解举例 仓库(仓库号,地点) 设备(设备号,设备名) 库存(仓库号,设备号,库存数量) 刚才提到的库存关系模式,我们可以把其分解为: