首页 > 数据库 >数据库建表步骤

数据库建表步骤

时间:2024-04-07 14:01:49浏览次数:32  
标签:班级 建表 步骤 数据库 学生 id 一年级 年级 主键

根据三范式进行业务建模

1)第一范式是指数据库表中的每个字段都是原子性的,即不可再分的。

    例如:学生表,字段如下 ,其中班级字段就需要再次拆分,拆分后的属性如图2

学生表
id学生姓名学生年龄学生性别班级
1张三8一年级二班
2李四8一年级一班

图一

学生表
id学生姓名学生年龄学生性别年级班级
1张三8一年级二班
2李四8一年级一班

图二

2)消除部分依赖

       这种情况一般是存在联合主键情况下,非主键列不完全依赖所有主键,只依赖部分主键。如学生姓名这一列跟时间没有关系,故学生姓名需要剔除,单独建立如图二学生表。

打卡记录
id学生Id学生姓名时间是否打卡
13张三周三上午
24李四周三下午

图三

3)消除传递依赖

    图四所示年级班级表中,校长字段显然冗余了。因为校长字段是学校属性,并不属于年级班级属性。故校长字段应该删除。新建校领导表进行存储。

年级班级表
id学校年级班级校长
1实验小学一年级一班张三
2实验小学一年级一班张三

图四

     依据三范式建立数据库表可以达到的效果:

     1)消除冗余性,因为表字段进行了最细粒度的分割,故而各个表结构不在保留分散的属性

     2)提高数据一致性,冗余字段在业务系统中会产生数据更新时的不一致。根据三范式建立的数据库表,可以最大限度提供数据一致性。

标签:班级,建表,步骤,数据库,学生,id,一年级,年级,主键
From: https://blog.csdn.net/u013254794/article/details/137457225

相关文章

  • 零基础轻松入门Java数据库连接(JDBC)
    什么是JDBC?Java数据库连接(JDBC)就像是Java程序和数据库之间的翻译官。它是一个官方的标准接口集,让Java程序能和不同的数据库“对话”。甭管你是在跟MySQL、Oracle还是SQLServer打交道,只要有了JDBC,Java就能用统一的方式去执行查询、更新数据库的操作。为什么我们需要JDBC?......
  • 基于SpringBoot的“垃圾分类网站”的设计与实现(源码+数据库+文档+PPT)
    基于SpringBoot的“垃圾分类网站”的设计与实现(源码+数据库+文档+PPT)开发语言:Java数据库:MySQL技术:SpringBoot工具:IDEA/Ecilpse、Navicat、Maven系统展示系统功能结构图系统功能界面图用户登录、用户注册界面图4垃圾图谱界面图管理员登录界面图用户......
  • 基于SpringBoot的“汽车租赁系统”的设计与实现(源码+数据库+文档+PPT)
    基于SpringBoot的“汽车租赁系统”的设计与实现(源码+数据库+文档+PPT)开发语言:Java数据库:MySQL技术:SpringBoot工具:IDEA/Ecilpse、Navicat、Maven系统展示系统功能结构图管理员登录界面图管理员功能界面图用户管理界面图车辆品牌管理界面图车辆颜色管......
  • 数据库索引的原理
    索引的原理是通过创建额外的数据结构来提高数据库查询的效率。索引是一种有序的数据结构,类似于书中的目录,它存储了表中特定列的值和对应的行位置。通过索引,数据库系统可以快速定位所需数据的物理存储位置,从而加速查询操作。下面以一个示例来说明索引的原理:假设有一个学生表(St......
  • 在线视频教育平台|基于Springboot的在线视频教育平台系统设计与实现(源码+数据库+文档
    在线视频教育平台目录基于Springboot的在线视频教育平台系统设计与实现一、前言二、系统设计三、系统功能设计 1、前台:2、后台用户功能模块教师功能模块四、数据库设计 五、核心代码 六、论文参考七、最新计算机毕设选题推荐八、源码获取:博主介绍:✌️大......
  • Java/Mysql数据库+django学生就业管理系统 24237(免费领源码)计算机毕业设计项目推荐上
    学生就业管理系统摘 要随着社会的快速发展和人们生活水平的不断提高,旅游已逐渐成为人们生活的重要组成部分,用户能够获取旅游信息的渠道也随信息技术的广泛应用而增加。大量未经过滤的信息在展示给用户的同时,也淹没了用户真正感兴趣的信息。为了方便用户快速定位自己感兴趣......
  • Java/Mysql数据库+springboot物流信息管理系统 23895(免费领源码)计算机毕业设计项目推
    本科毕业论文论文题目:物流信息管理系统的设计与实现院(系)名 称:专  业  名 称:学 生 姓  名:指导教师(校内):指导教师(企业):2023年4月 摘要科技进步的飞速发展引起人们日常生活的巨大变化,电子信息技术的飞速发展使得电子信......
  • (免费领源码)python/Mysql数据库+SSM课程资源库APP 23834,计算机毕业设计项目推荐上万套
    本科生毕业论文(设计) 题   目ssm课程资源库APP学   院       XXXXX     专业班级   XXXXX学生姓名       XXXX    指导产品             XXXX          目 录摘要1绪论1.1开发的意义1.......
  • Mysql数据库getshell方法
    今天摸鱼时候,突然有人问我不同的数据库getshell的方式,一时间我想到了mysql还有redis未授权访问到getshell的方式,但是仅仅第一时间只想到了这两种,我有查了查资料,找到了上面两种数据库getshell的补充,以及其他数据库getshell的方式。因此更新一个专栏,各个数据库getshell的方式。......
  • JetBrains DataGrip 2024.1 (macOS, Linux, Windows) - 数据库和 SQL 跨平台 IDE
    JetBrainsDataGrip2024.1(macOS,Linux,Windows)-数据库和SQL跨平台IDE请访问原文链接:JetBrainsDataGrip2024.1(macOS,Linux,Windows)-数据库和SQL跨平台IDE,查看最新版。原创作品,转载请保留出处。作者主页:sysin.orgJetBrainsDataGrip-多种数据库,一个工......