mysql表设计原则和三大范式 一、MySQL表设计原则 1、数据表应该有一个主键,主键必须是唯一可标识每行数据的。 2、应尽可能使用自然标识而不是系统生成的标识,如id、seria_no等。 3、字段提供前后文命名服务。 4、应不使用null,尤其是关系表的主键字段不推荐使用null。 5、不要过度设计数据表,一个数据表尽可能包含相关信息。 6、有选择地使用索引,以便提高查询的效率。 7、应避免删除表,如有必要可以加入删除字段 instead of DROP TABLE 8、应使用自动增长的字段 二、三大范式 第一范式(1NF):字段是原子性的,没有任何子字段,也不能有任何一个字段有多值,例如A表中有个字段叫GoodsItems,这个字段是用来存放商品信息的,但是会有多个商品的情况,这样就说明GoodsItems字段不满足1NF了,它要被拆分成多个字段,例如GoodsItems_1、GoodsItems_2 第二范式(2NF):字段无重复,也称去冗余范式,即一个表中不能存在相同的字段,例如一张表中有两个字段叫num,同时也不能存在冗余字段 第三范式(3NF):字段独立,字段不能存在耦合,即不能如:A表中有两个字段叫age,name,其中age存放的是name字段对应的年龄信息,这样就说明字段name和age不满足3NF了,要把这两个字段分别放在不同的表中。 本文来源:https://www.wddqw.com/doc/838863b5142ded630b1c59eef8c75fbfc77d94ff.html