一、整体概况:
键:
- 超键 : 唯一标识元祖 : 包含单个属性,或者组合属性
- 候选键 :任选一个都是主键
- 主键
- 外键 : 其他关系的主键
范式:
1、第一范式 (1FN):原子性,属性不可分
例子:
解决方案:去掉高级职称 变成 (系名称,教授,副教授)去掉高级职称人数 - 解决了原子独立性
2、第二范式 (2FN):从第一范式中:消除了非主属性对候选键的部分依赖,也就是(每个非主属性完全依赖主键,没有部分依赖)
在上面的例子中CREDIT(学分)依赖CNO,存在部分依赖,不满足第二范式,所以将CNO,CREDIT 独立分开放另外一个关系就解决问题
3、第三范式 (3NF)非主属性没有传递依赖
根据上表,主键只有单属性,满足第二范式的基本要求。但是存在数据冗余,DNO, DNAME, LOCATION 都有重复的数据,解决方案:讲三个元组 独立出来就解决问题
4、BCNF
二、关系的模式分解
1、保持函数依赖的分解
2、无损分解