数据库三大范式
来源:互联网 发布:兰灯翻墙for mac 编辑:程序博客网 时间:2024/05/21 14:53
数据库三大范式
设计范式:它是为了建立关系型数据库时,减少数据的冗余,让数据库的结构尽量的合理,那么就要满足数据库三大范式.
(1)第一范式:(原子性)1NF是对属性的原子性约束,
最基本的范式,
要求属性具有原子性,不可再分解;通俗的理解是,字段还可以再分吗?如过不能,则是符合1NF的设计。
(2)第二范式:(完全依赖)2NF是对记录的惟一性约束,要求记录有惟一标识,即实体的惟一性;(一个表只能存一种数据)
简单的解释,比如你和一个女生约会建立一张表,不用每条约会记录都记录她的身高、体重,将身高体重单独的存在一张表中供查询即可。
(3)第三范式:(取消传递依赖)3NF是对字段冗余性的约束,即任何字段不能由其他字段派生出来,它要求字段没有冗余。
打个比方,比如评论表,如果你将用户ID,用户头像都放在这留言表中,就是不合适的了。用户头像是依赖于用户ID,而不依赖该评论。
1 0
- 数据库三大范式
- 数据库三大范式
- 数据库三大范式
- 数据库三大范式
- 数据库三大范式
- 数据库三大范式
- 数据库三大范式
- 数据库三大范式
- 数据库三大范式
- 数据库三大范式
- 数据库三大范式
- 数据库三大范式
- 数据库三大范式
- 数据库三大范式
- 数据库三大范式
- 数据库三大范式
- 数据库三大范式
- 数据库三大范式
- 一个菜鸟java码农的成长之路(2):迭代器Iterator接口概述
- 一个简单数据库连接池的实现
- c++/sstream/stoi/
- 使用POI操作excel(读取和创建)快速开发指南
- 一个外国网站严肃地统计后发现,中国程序员整体实力世界第一
- 数据库三大范式
- 2016年10月4日
- Python基础笔记(1):函数篇(1):关于函数参数
- cmd中输入net start mysql 提示:服务名无效
- 史海钩沉:借力百度,DDoS攻击冲击GitHub
- BZOJ1669: [Usaco2006 Oct]Hungry Cows饥饿的奶牛
- 一些杂货
- BZOJ1601: [Usaco2008 Oct]灌水
- Linux下开机异常(fsck exited with status code 4)