Mysql标准化数据库
标准化原则
1. 降低空间占用。减少冗余数据。
2. 数据完整性。同类型的数据尽可能地存储在统一的位置。
3. 可维护性。不同的类型的数据分割到不同的位置,不至于混杂不堪。
1NF
“every field should hold onlyonevalue.”
——每列只能包含一个数据
违反第一范式的例子:
film_title单个字段包含了很多值,这是不允许的。
改造完成:
2NF
“every non-key field can be accessed using a logically related key.”
——非主属性全部依赖键(含组合主键)
修复:
将film_id和title拆分到新的表,解决title和actor_id无关的问题。
3NF
"all non-key fields are accessible by the table’s primary key."
——所有的非主属性,必须完全依赖主键。