关闭

数据库设计之三大范式

标签: 数据库设计sql-server三大范式数据库设计
98人阅读 评论(0) 收藏 举报
分类:

背景

表设计后,很可能结构不合理,出现数据重复保存,简称数据的冗余,这对数据的增删改查带来很多后患,所以我们需要审核是否合理,如何审核呢?需要一些有关数据库设计的理论指导规则,这些规则业界简称数据库的范式。

两个重要概念

1、部分函数依赖

sq1

1> 存在数据冗余
2>添加数据会有异常
3>更新数据会有异常
4>删除会有异常

2、传递函数依赖

sq2

1> 存在数据冗余
2>添加数据会有异常
3>更新数据会有异常
4>删除会有异常

三大范式

1、第一范式

sq3

1-1、第一范式的目标是确保每列的原子性
1-2、如果每列都是不可再分的最小数据单元(也称为最小的原子单元),则满足第一范式

2、第二范式

sq4

2-1、如果一个关系满足1NF,并且除了主键以外的其他列,都依赖与该主键,则满足第二范式
2-2、第二范式要求每个表只描述一件事情

3、第三范式

sq5

3-1、如果一个关系满足第二范式,并且除了主键以外的其他列都不传递依赖于主键列,则满足第三范式

总结:

良好的数据库设计
1、节省数据的存储空间
2、能够保证数据的完整性
3、方便进行数据库应用系统的开发

糟糕的数据库设计
1、数据冗余、存储空间浪费
2、内存空间浪费
3、数据更新和插入的异常

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:36938次
    • 积分:974
    • 等级:
    • 排名:千里之外
    • 原创:35篇
    • 转载:170篇
    • 译文:1篇
    • 评论:6条
    文章分类
    最新评论