mysql 三大范式【转载】

第一范式(1NF,normal format):字段不能再分。

这是字段的原子性。例如:字段“学期时间”:2014-9-1,2015-1-15。 这个字段“学期时间”可以再分为“学期开始时间”,2014-9-1;和“学期结束时间”,2015-1-15。

第二范式(2NF):范式是递增的,要满足第二范式,必须满足第一范式!2NF要求字段对主键没有部分依赖!

先说部分,有部分说明主键是复合主键。来个彻底的解决办法就是,让主键不是复合主键,即让主键是一个字段!

再说依赖,依赖是通过一个字段能确定另一字段,我们就说被确定的字段对确定它的字段有依赖。比如:知道了“名字”字段,便能确定“性别”字段。我们就说“性别”字段对“名字”字段有依赖。

最后连起来解释部分依赖,记录中某些字段的值只是被复合主键中的某个值确定了,我们就说字段对主键有部分依赖。

做法:只要给表一个“id”字段,并设置自动增长,便可。其实就是取消掉复合主键。通过另一个单一字段的主键来代替。一句话,没有复合主键,就没有部分依赖。

写法为:id int unsigned primary key auto_inrement

第三范式(3NF):满足第二范式,并取消传递依赖。要满足第三范式,不能在一张表上操作了,需要把原表拆分成几个表。当然如果不用拆分了,说明已经满足了。

 

A->B->C C依赖于B,B依赖于A。这就是传递依赖。

 

做法:每个实体建立一个表,为每个表建立一个主键id。

 

 

总结: 应该说,一条记录里面任何两个数据之间都不能有依赖,除了和主键。主键和任何一个数据之间都存在依赖。

转载地址:http://blog.sina.com.cn/s/blog_9d7221820102v8lw.html

时间: 2024-12-14 00:42:50

mysql 三大范式【转载】的相关文章

oracle三大范式(转载)

标准化表示从你的数据存储中移去数据冗余 (redundancy)的过程.如果数据库设计达到了完全的标准化,则把所有的表通过关键字连接在一起时,不会出现任何数据的复本 (repetition).标准化的优点是明显的,它避免了数据冗余,自然就节省了空间,也对数据的一致性(consistency)提供了根本的保障, 杜绝了数据不一致的现象,同时也提高了效率. 第一范式(1NF;The First Normal Form) 第一范式是最低的规范化要求,第一范式要求数据表不能存在重复的记录,即存在一个关键

MySql三大范式与数据库设计和表创建常用语句

[数据库设计的三大范式] 1.第一范式(1NF First Normal Fromate):数据表中的每一列(字段),必须是不可拆分的最小单元.也就是确保每一列的原子性. 例如: userInfo: '山东省烟台市 13181621008' => userAds:'山东省烟台市' tel:'13181621008' 2.第二范式(2NF):满足1NF后,要求:表中所有的列,都必须功能依赖于主键,而不能有任何一列与主键没有关系.(一张表值描述一件事情) 3.第三范式(3NF):满足2NF后,要求:

MYSQL三大范式

第一范式:确保每列的原子性. 第一范式是最基本的范式. 数据库表中的字段都是单一属性的,不可再分. 只要是关系数据库都满足第一范式 如果每列(或者每个属性)都是不可再分的最小数据单元(也称为最小的原子单元),则满足第一范式. 例如:顾客表(姓名.编号.地址.--)其中"地址"列还可以细分为国家.省.市.区等. 2.第二范式(确保表中的每列都和主键相关). 如果一个关系满足第一范式,并且除了主键以外的其它列,都依赖于该主键,则满足第二范式. 例如:订单表(订单编号.产品编号.定购日期.价

MySQL 基础知识 三大范式

三大范式数据库设计三大范式 为了建立冗余较小.结构合理的数据库,设计数据库时必须遵循一定的规则.在关系型数据库中这种规则就称为范式.范式是符合某一种设计要求的总结.要想设计一个结构合理的关系型数据库,必须满足一定的范式. 在实际开发中最为常见的设计范式有三个: 1.第一范式(确保每列保持原子性) 第一范式是最基本的范式.如果数据库表中的所有字段值都是不可分解的原子值,就说明该数据库表满足了第一范式. 第一范式的合理遵循需要根据系统的实际需求来定.比如某些数据库系统中需要用到"地址"这个

数据库基础和三大范式以及基本的增删改查命令

所谓数据库就是建库 建表 建约束.① 确定实体 就是确定有几张表 ② 确定表的属性 规范化的三个级别:数据库设计的三大范式!!!! 第一范式(1NF):原子性:数据表中的每一列是不可拆分的最小单元,也就是确保每一列的原子性. 例如:userInfo:'山东省烟台市 11233445667' 拆分成: '山东省烟台市' 和''11233445667": 第二范式(2NF):满足1NF后,要求:表中的所有列都依赖于主键,而不能有任何一列与主键没有关系. 也就是说每张表只能描述一件事情. 例如:订单表

数据库的三大范式以及五大约束

                         数  据   库      今天小编来讲一下数据库的相关知识点,数据库的三大特性可谓是:实体属性和关系. 实体:表: 属性:表中的数据(字段): 关系:表与表之间的关系: 数据库设计三大范式(重点): 第一范式(1NF):数据表中的每一列(每个字段)必须是不可拆分的最小单元,也就是确保每一列的原子性: 例如:userInfo:山东省烟台市  131777368781           userAds:山东0省烟台市  userTel:13177

数据库三大范式及五大约束

数据库的三大范式以及五大约束                                                                     数  据   库      今天小编来讲一下数据库的相关知识点,数据库的三大特性可谓是:实体属性和关系.      实体:表: 属性:表中的数据(字段): 关系:表与表之间的关系:     第一范式(1NF):数据表中的每一列(每个字段)必须是不可拆分的最小单元,也就是确保每一列的原子性:                      

数据库的三大范式和五大约束(转)

一.三大范式: 1. 第一范式(1NF):数据表中的每一列(每个字段)必须是不可拆分的最小单元,也就是确保每一列的原子性: 2. 第二范式(2NF):满足1NF后,要求表中的所有列,都必须依赖于主键,而不能有任何一列与主键没有关系,也就是说一个表只描述一件事情 3. 第三范式(3NF):必须先满足第二范式(2NF),要求:表中的每一列只与主键直接相关而不是间接相关,(表中的每一列只能依赖于主键). 总结: 第一范式和第二范式在于有没有分出两张表,第二范式是说一张表中包含了所种不同的实体属性,那么

数据库设计的三大范式

数据库设计的三大范式 为了建立冗余较小.结构合理的数据库,设计数据库时必须遵循一定的规则.在关系型数据库中这种规则就称为范式.范式是符合某一种设计要求的总结.要想设计一个结构合理的关系型数据库,必须满足一定的范式. 在实际开发中最为常见的设计范式有三个: 1.第一范式 第一范式是最基本的范式.如果数据库表中的所有字段值都是不可分解的原子值,就说明该数据库表满足了第一范式. 第一范式的合理遵循需要根据系统的实际需求来定.比如某些数据库系统中需要用到"地址"这个属性,本来直接将"