前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >数据表的范式

数据表的范式

作者头像
王小明_HIT
发布2020-06-23 14:26:09
1.1K0
发布2020-06-23 14:26:09
举报
文章被收录于专栏:程序员奇点

数据表的范式

数据库设计有哪些范式?

关系型数据库一共有 6 种范式,按照范式级别,从低到高分别是:

  • 1NF 第一范式
  • 2NF 第二范式
  • 3NF 第三范式
  • BCNF 巴斯-科德范式
  • 4NF 第四范式
  • 5NF 第五范式,也叫完美范式

数据库的范式设计越高阶,冗余度就越低,高阶范式一定符合低阶范式的要求。

6种设计范式关系

第一范式 1NF

第一范式的目标是确保每列的原子性,如果每列都是不可再分的最小原子单元。1NF 是指数据库中任何属性都是原子的,不可拆分。

第二范式 2NF

首先满足第一范式,并且表中非主键不存在对主键的依赖。第二范式要求每个表只描述一件事情

第二范式

第三范式 3NF

第三范式定义是,满足第二范式,并且表中的列不存在对非主键列的传递依赖简单的说,一个关系中不包含已在其它关系已包含的非主关键字信息

例子,如果将表设计成如下:

可以改成如下两个表:

学生表:

院校表:

数据表中有哪些键

范式的定义会用到主键和候选键,主键和候选键可唯一标识元组,数据库中的键可以由一个或者多个属性组成。

  • 超键:能唯⼀标识元组的属性集叫做超键。
  • 候选键:如果超键不包括多余的属性,那么这个超键就是候选键。
  • 主键:用户可以从候选键中选择⼀个作为主键。
  • 外键:如果数据表R1中的某属性集不是R1的主键,⽽是另⼀个数据表R2的主键,那么这个属性集就是数据表R1的外键。
  • 主属性:包含在任⼀候选键中的属性称为主属性。
  • ⾮主属性:与主属性相对,指的是不包含在任何⼀个候选键中的属性。
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-06-18,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 程序员奇点 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 数据表的范式
    • 数据库设计有哪些范式?
      • 第一范式 1NF
        • 第二范式 2NF
          • 第三范式 3NF
            • 数据表中有哪些键
            相关产品与服务
            数据库
            云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档