美文网首页
SQL范式设计

SQL范式设计

作者: M_3ece | 来源:发表于2019-08-19 18:59 被阅读0次

六种范式

从低到高分别是: 1NF(第一范式), 2NF(第二范式), 3NF(第三范式), BCNF(巴斯-科德范式), 4NF(第四范式), 5NF(又称完美范式).

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

一般使用 3NF.

1NF: 数据库表中的任何属性都是原子性的, 不可再分. 

2NF: 数据表里的非主属性都要和这个数据表的候选键有完全依赖关系. 

3NF: 在满足 2NF 的同时, 数据表中的非属性与候选键不存在传递依赖性. 

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

超键: 唯一标识元组的属性集.

候选键: 如果超键不包括多余的属性, 那么这个超键就是候选键.

主键: 用户可以从候选键中选择一个作为主键.

外键: 如果数据表R1中的某属性集不是R1的主键, 而是另一个数据表R2的主键, 那么这个属性集就是数据表R1的外键.

主属性: 包含在任一候选键中的属性称为主属性.

非主属性: 与主属性相对, 指的是不包含在任何一个候选键中的属性. 

通常将候选键称之为"码", 主键称为"主码".

相关文章

  • SQL范式设计

    六种范式 从低到高分别是: 1NF(第一范式), 2NF(第二范式), 3NF(第三范式), BCNF(巴斯-科德...

  • SQL范式

    范式(数据库设计范式,数据库的设计范式)是符合某一种级别的关系模式的集合。构造数据库必须遵循一定的规则。在关系数据...

  • SQL必知必会(设计范式)

    数据库的设计范式都包括哪些 我们在设计关系型数据库模型的时候,需要对关系内部各个属性之间联系的合理化程度进行定义,...

  • 数据库的优化

    1.优化索引、SQL 语句、分析慢查询;2.设计表的时候严格根据数据库的设计范式来设计数据库;3.使用缓存,把经常...

  • java_sql数据库的设计

    数据库设计三范式(重点) 1.什么是设计范式 2.设计范式是哪些 3.第三范式 是建立在第二范式基础上 所有非主键...

  • SQL必知必会(反范式设计)

    BCNF(巴斯范式) 如果数据表的关系模式符合 3NF 的要求,就不存在问题了吗?我们来看下这张仓库管理关系 wa...

  • sql 三范式

    数据库结构设计三范式 第一范式 是对属性的原子性,要求属性具有原子性,不可再分解。 错误设计: StuIdStuN...

  • 数据库设计三范式与反范式

    MySql设计与优化系列笔记:一、数据库设计三范式与反范式二、MySql表设计与优化 第一范式: 1、数据库的所有...

  • SQL入门知识大纲

    SQL •范式 第一范式◾目标是确保每列的原子性。每列都是不可再分的最小数据单元 ◦ 第二范式◾目标是要求每个...

  • python学习笔记-数据库07_高级操作_数据库设计

    数据库设计之三范式 范式:对设计数据库提出的一些规范,目前有迹可循的共有8中范式,一般遵循3范式即可。第一范式(1...

网友评论

      本文标题:SQL范式设计

      本文链接:https://www.haomeiwen.com/subject/joorsctx.html