简述数据库的三大范式和五大约束

范式书上讲解太拗口,自己总结一下:

第一范式:数据表中的每一列(每个字段)必须是不可拆分的最小单元,不允许存在隐藏字段,属性保持“原子性”(最大细分的二维表)


第二范式:第一范式基础上要有主键,所有列都必须依赖于主键,而不能有任何一列与主键没有关系,也就是说一个表只描述一件事情(相当于这行阐述的是一个人时,你不能加一列说明天气)


第三范式:满足第二范式,表中的每一列只与主键直接相关而不是间接相关,(表中的每一列只能依赖于主键)


正规化范式(BCDF):所有表中的决定因素必须是一个候选键,如果只有一个候选键,那么就和第三范式是一样的。

有第四第五范式,更高的范式是为了解决数据冗余问题,但可以通过其他办法达到。所以一般用不到


五大约束:
1.primary KEY:设置主键约束;

2.UNIQUE:设置唯一性约束,不能有重复值;

3.DEFAULT 默认值约束,height DOUBLE(3,2)DEFAULT 1.2 height不输入是默认为1,2

4.NOT NULL:设置非空约束,该字段不能为空;

5.FOREIGN key :设置外键约束。

你可能感兴趣的:(简述数据库的三大范式和五大约束)