数据库结构优化和范式

fyh 2022年05月13日 43次浏览

数据结构优化的目的

  • 减少数据冗余
  • 尽量避免数据维护中出现更新,插入和删除异常
    • 插入异常:如果表中某个实体随着另一个实体而存在。比如学生选课表,在没有选择「语文」课程的时候不能把这门课程插入到表中。
    • 更新异常:如果更改表中的某个实体的单独属性时,需要对多行进行更新。比如学生选课表中更新「数学」课程的学分时会把所有选择数学学生的记录都更新一边,造成大量更新的冗余。
    • 删除异常:如果删除表中的某一实体会导致其它实体的小时。比如学生选课表中删除了所有「数学」的选课记录,就会造成这门课程不存在。
  • 节约数据存储空间

数据库设计范式

1.数据库设计的第一范式
1> 数据库表中的所有字段都只具有单一属性
2> 单一属性的列是由数据类型所构成的
3> 设计出来的表都是简单的二维表
2. 数据库设计的第二范式:
满足第一范式的情况下, 要求一个表中只具有一个业务主键,也就是说符合第二范式的表中不能存在非主键列对只对部分主键的依赖关系.
3. 数据库设计的第三范式:
满足第二范式的情况下, 指每一个非主属性既不部分依赖于也不传递依赖于业务主键,也就是在第二范式的基础上消除了非主属性对主键的传递依赖.