看就懂的数据库三大范式的基本概念

   日期:2020-07-14     浏览:90    评论:0    
核心提示:数据库的三大范式:第一范式:表中所有字段都是不可分割的原子值。只要字段值还可以继续拆分,就不满足第一范式。例如地址这个字段,如果写为XX省XX市XX区就不满足第一范式,因为这个字段可以继续拆分为字段省,字段市,字段区。在实际数据处理过程中,范式设计越详细,操作更加灵活。如表1学生信息表1学生学号学生姓名性别家庭住址其中家庭住址的范围较广,可以继续拆分为表2学生信息表2学生学号学生姓名性别家庭住址(省)家庭住址(市)家庭住址(区)这样在执行查询语句

数据库的三大范式:

第一范式:

表中所有字段都是不可分割的原子值。只要字段值还可以继续拆分,就不满足第一范式。例如地址这个字段,如果写为XX省XX市XX区就不满足第一范式,因为这个字段可以继续拆分为字段省,字段市,字段区。在实际数据处理过程中,范式设计越详细,操作更加灵活。
如表1
学生信息表1

学生学号 学生姓名 性别 家庭住址

其中家庭住址的范围较广,可以继续拆分为表2
学生信息表2

学生学号 学生姓名 性别 家庭住址(省) 家庭住址(市) 家庭住址(区)

这样在执行查询语句的时候,条件限制更为具体(当然,区往后还可以继续再分,根据实际要求看)。

第二范式:

在满足了第一范式的条件下,要求除了主键外的每一个列都必须完全依赖主键。例如表3
学生信息表3

学生姓名 学生性别 学生身份证号 紧急联系人 所属关系 职务 所在公司

其中学生性别、学生身份证号、紧急联系人、所属关系都是依赖于学生本身的,而职务、所在公司与学生本身是没有依赖关系的,所以这张表应该分为两张表:
表4
学生信息表4

学生姓名 学生性别 学生身份证号 紧急联系人 所属关系

表5
联系人信息表

紧急联系人 职务 所在公司

第三范式:

必须先满足第二范式,并且除开主键列的其他列之间不能存在传递依赖关系。
这里的传递依赖用一个简单的例子说明:
如表6
学生信息表6

学生学号 系编号 系主任

通过学生学号可以查询其所在的系编号,通过系编号可以查询到系主任,但是由系编号是决定不了具体的一个学生的,所以说系主任和学生学号之间存在传递依赖,换句话说系主任是依赖于系编号的,但是表中的学生学号才是主键,系主任却不能完全依赖于学生学号。所以要将系主任置于另一张以系编号为主键的信息表中。

 
打赏
 本文转载自:网络 
所有权利归属于原作者,如文章来源标示错误或侵犯了您的权利请联系微信13520258486
更多>最近资讯中心
更多>最新资讯中心
0相关评论

推荐图文
推荐资讯中心
点击排行
最新信息
新手指南
采购商服务
供应商服务
交易安全
关注我们
手机网站:
新浪微博:
微信关注:

13520258486

周一至周五 9:00-18:00
(其他时间联系在线客服)

24小时在线客服