当前位置: 首页 > news >正文

数据库设计规范(三大范式)

1、第一范式*(确保每列保持原子性)

第一范式是最基本的范式。如果数据库表中的所有字段值都是不可分解的原子值,就说明该数据库满足第一范式。

第一范式的合理遵循需要根据系统给的实际需求来确定。比如某些数据库系统中需要用到“地址”这个属性,本来直接将“地址”属性设计成为一个数据库表的字段就行,但是如果系统经常访问“地址”属性中的“城市”部分,那么一定要把“地址”这个属性重新拆分为省份、城市、详细地址等多个部分来进行存储,这样对地址中某一个部分操作的时候将非常方便,这样设计才算满足数据库的第一范式。

2、第二范式(确保表中的每列都和主键相关)

第二范式在第一范式的基础上更进一层,第二范式需要确保数据库表中每一列都和主键相关,而不能只与主键的某一部分相关(主要针对联合主键而言)。也就是说在一个数据库表中,一个表中只能保存一种数据,不可以把多种数据保存在同一张数据库表中。

3、第三范式(确保每列都和主键列直接相关,而不是间接相关)

第三范式需要确保数据表中的每一列数据都和主键直接相关,而不能间接相关。

比如在设计一个订单数据表的时候,可以将客户编号作为一个外键和订单表建立相应的关系,而不可以在订单表中添加关于客户其他信息(比如姓名、所属公司)的字段

http://www.lryc.cn/news/330576.html

相关文章:

  • 图论模板详解
  • ArcGIS Pro打不开Excel?Microsoft驱动程序安装不上?
  • 简单了解裸眼3D呈现技术
  • 单元测试——Junit (断言、常用注解)
  • 【蓝桥杯每日一题】4.2 全球变暖
  • ffmpeg点对点音视频udp协议传输
  • ensp华为AC+AP上线配置
  • JAVA基础02-Java语言基础以及编译准备工作
  • Photoshop 2024 Mac/win---图像处理的新纪元,解锁无限创意
  • 【MySQL系列】使用 ALTER TABLE 语句修改表结构的方法
  • ElementUI 表格横向滚动条时滚动到指定位置
  • 【论文阅读】DETR 论文逐段精读
  • 负载均衡:实现高效稳定的网络服务
  • 2024最新软件测试【测试理论+ 抓包与网络协议】面试题(内附答案)
  • 极简7照训练法,奇趣相机引领儿童AI摄影潮流
  • Flink应用
  • C# 委托与事件 终章
  • MySQL-linux安装-万能RPM法
  • elment UI el-date-picker 月份组件选定后提交后台页面显示正常,提交后台字段变成时区格式
  • 基于 NGINX 的 ngx_http_geoip2 模块 来禁止国外 IP 访问网站
  • C++经典面试题目(二十)
  • vue3+uniapp 动态渲染组件,兼容h5、app端
  • CSS层叠样式表学习(2)
  • 【MySQL】DML的表操作详解:添加数据&修改数据&删除数据(可cv例题语句)
  • Docker命令及部署Java项目
  • 深度学习入门:从理论到实践的全面指南
  • 后端前行Vue之路(二):模版语法之插值与指令
  • Kotlin 中的类和构造方法
  • 【2024最新】vue3的基本使用(超详细)
  • 【xinference】(8):在autodl上,使用xinference部署qwen1.5大模型,速度特别快,同时还支持函数调用,测试成功!