首页 > 数据库 >数据库设计三范式

数据库设计三范式

时间:2023-09-18 21:33:18浏览次数:49  
标签:范式 数据库 外键 第二 设计 表加 主键

数据库表的设计依据,教我们怎么进行数据表的设计。

第一范式:要求任何一张表都必须有主键,每一个字段原子性(单一性)不可再分。

第二范式:建立在第一范式的基础上,要求所有非主键字段完全依赖于主键,不要产生部分依赖。

第三范式:建立在第二范式的基础上,要求所有非主键字段完全依赖于主键,不要产生传递依赖。

==上面的三范式非常重要!!!==

第一范式

最核心,最重要的范式,所有表的设计都必须满足。

第二范式

当关系存在多对多的时候,要考虑用三个表表示对多对的关系,两个表加关系表,关系表中两个外键。这样能够有效防止数据冗余,从而满足第二范式。(复合主键容易产生部分依赖)

第三范式

一对多!!

拆分成两个表,设置主键和外键。一对多,多的表加外键!!!!

总结

标签:范式,数据库,外键,第二,设计,表加,主键
From: https://blog.51cto.com/u_15433911/7516148

相关文章

  • 如何远程服务上的orcal数据库
    作为软件开发工程师,管理数据库是我们必不可少的日常操作,那么你知道怎么用本地主机(可以是PC,也可以是笔记本或者其他终端)利用cmd终端命令进行远程管理服务器上的数据库吗?接下来,随着小编的脚步一起来看看,具体是怎么操作的!1.下载安装instantclient工具下载安装Oracle数据库的客户......
  • 《优化接口设计的思路》系列:第三篇—留下用户调用接口的痕迹
    前言大家好!我是sum墨,一个一线的底层码农,平时喜欢研究和思考一些技术相关的问题并整理成文,限于本人水平,如果文章和代码有表述不当之处,还请不吝赐教。作为一名从业已达六年的老码农,我的工作主要是开发后端Java业务系统,包括各种管理后台和小程序等。在这些项目中,我设计过单/多租户......
  • openGauss学习笔记-73 openGauss 数据库管理-创建和管理索引
    openGauss学习笔记-73openGauss数据库管理-创建和管理索引73.1背景信息索引可以提高数据的访问速度,但同时也增加了插入、更新和删除操作的处理时间。所以是否要为表增加索引,索引建立在哪些字段上,是创建索引前必须要考虑的问题。需要分析应用程序的业务处理、数据使用、经常被......
  • Python 之 专为程序员设计的《极限车神》小游戏
    通过这款专为程序员设计的《极限车神》小游戏,你的打字速度可以赢过专业录入员,这个秘密99%的人都不知道哦~(爆赞)正文关键词:休闲、赛车、竞技、竞速、操作、打字、闯关、限时。氪金指数:0氪金。推荐星数:4星❤(满星5星)难度星数:5星❤(满星5星)环境准备Python3、Pycharm社区版,第三方......
  • 软件设计师——面向对象技术
    面向对象和面向过程面向对象的基本概念面向对象=对象+费雷+继承+通过消息的通信3.类:一个定义了一组大体上相似的对象。一个类所包含的方法和数据描述一组对象的共同行为和属性......
  • 软件设计师——数据定义语言
    1建立数据库基本语法:CREATEDATABASE数据库名2建立基本表3修改基本表结构增加一个新列:ALTERTABLE表名ADD列名类型修改一个新列ALTERTABLE表名ALTERCOLUMN列名类型删除一个列ALTERTABLE表名DROPCOLUMNf24删除基本表基本语句如下:DROPRTABLE表名......
  • 在EasyGBS数据库中怎么样存储视频,有哪些方式储存视频
    EasyGBS平台是一款安防视频监控/视频集中存储/云存储/磁盘阵列平台,具有强大的可拓展性和灵活的视频能力,轻便易部署。该平台支持国标GB28181、RTSP/Onvif、RTMP等主流标准协议,以及海康Ehome、海大宇等设备的SDK接入。有两种方法:1、在数据库中建立相关表保存视图的相对路径即可调......
  • HeadFirst设计模式学习之OO设计模式入门
    【一】引入---鸭子无论在哪门编程语言中,都离不开我们最熟悉的鸭子模型,因此作者在引入部分也是利用鸭子作为案例引入我们进行入门的学习【1】鸭子游戏现在我们需要做一款模拟鸭子游泳的游戏在游戏中,有不同的鸭子,不同的鸭子都会游泳和呱呱叫而这款游戏的实现思路就是一......
  • 《安富莱嵌入式周报》第301期:ThreadX老大离开微软推出PX5 RTOS第5代系统,支持回流焊的
    祝大家开工大吉视频版:https://www.bilibili.com/video/BV1GT411o7zr1、ThreadX老大离开微软,开发的第5代RTOS系统PX5RTOS正式上线最早是看到IAR的一条消息,全面支持PX5RTOS,然后就进一步上他们的官方下载白皮书了解相关消息当看到这两个名字时,很熟悉,这不就是ThreadX的老大BillLamie......
  • 不要使用count(列名)或count(常量)来替代count(*),count(*)就是SQL92定义的标准统计行
    慢SQL治理经验总结https://mp.weixin.qq.com/s/LZRSQJufGRpRw6u4h_Uyww慢SQL治理经验总结原创 药糖 大淘宝技术 2023-09-1816:20 发表于浙江 在过去两年的工作中,我们团队曾负责大淘宝技术的慢SQL治理工作,作为横向的数据安全治理平台,如何快速准确地发现部门内所有应用......