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

MySQL数据表的设计

实际工程中, 对于数据表的设计和创建, 我们遵循以下步骤: 首先确定实体, 找到关键名词, 提取关键信息, 设计表有哪些列, 每一列是什么. (有几个实体, 一般就创建几个表, 一般一个表对应一个实体)

实体之间的关系:

1. 一对一关系

例如:

一个学生, 只能有一个账号; 一个账号只能被一个学生持有.

解决方案:

(1) 设计一个表, 同时包含学生信息和账号信息.

table student (studentId, name, accountName, password).

(2) 设计两个表(student表和account表, 并将两个表进行关联).

table student (studentId, name, accountId).

table account (accountId, accountName, password).

或:

table student (studentId, name).

table account (accountName, password, studentId).

2. 一对多关系:

例如:

一个学生只能属于一个班级; 但是一个班级可以包含多个学生.

解决方案: 创建一个student表, 创建一个class表. 将两表通过classid进行关联.

table student (studentId, name, classId).

table class (classId, className).

3. 多对多关系

例如: 一个学生可以选择多门课程; 一个课程也可以被多个学生选择.

解决方案: 创建三个表(student表, course表, 还有关联表student-course表), 通过关联表对两表进行联系.

table student (studentId, studentName).

table course (courseId, courseName).

table student-course (studentId, courseId).

4. 没有关系

对于没有关系的两个实体, 分别创建各自的表即可.

 以上就是本篇博客的全部内容啦,如果喜欢小编的文章,可以点赞,评论,收藏~

相关文章:

MySQL数据表的设计

实际工程中, 对于数据表的设计和创建, 我们遵循以下步骤: 首先确定实体, 找到关键名词, 提取关键信息, 设计表有哪些列, 每一列是什么. (有几个实体, 一般就创建几个表, 一般一个表对应一个实体) 实体之间的关系: 1. 一对一关系 例如: 一个学生, 只能有一个账号; 一个账号只…...

Flutter开发效率提升1000%,Flutter Quick教程之对写好的Widget进行嵌套

通常写代码的时候,我们是先写好外面的Widget,再写里面的Widget。但是,也有的时候,我们写好了一个Widget,但是我们觉得有必要再在外面嵌套一个Widget,这时候应该怎么做呢?(还有其他方…...

2020编程语言排序:探索编程界的热门与趋势

2020编程语言排序:探索编程界的热门与趋势 在数字时代的浪潮中,编程语言作为构建数字世界的基石,其流行度和影响力不容忽视。2020年,各大编程语言在各自的领域里展现出独特的魅力和实力。本文将从四个方面、五个方面、六个方面和…...

提高工作效率的招数

自己的工作效率为啥比别人低,因为不会使用工具,这就是一个大冤种。 1.血泪教训,写代码调用第三方接口的时候已经要打印调用日志,不然扯皮真的难搞。 2.pg 上测试或的时候由于schema 错误mybatis会给你报空指针一样,还…...

css特殊效果和页面布局

特殊效果 圆角边框:div{border-radius: 20px 10px 50px 30px;} 四个属性值按顺时针排列,左上的1/4圆半径为20px,右上10,右下50,左下30。 div{border-radius: 20px;} 四角都为20px。 div{border-radius: 20px 10…...

JavaScript中对象的增删改查

1. 增(添加属性) let obj {}; // 添加一个属性 obj.name John Doe; // 或者使用方括号语法添加属性(这对于动态属性名很有用) let propName age; obj[propName] 30; console.log(obj); // 输出: { name: John Doe, …...

技术周总结 2024.05.27~06.02(java bean冲突 软件工程)

文章目录 一、05.28 周二1.1)问题01:java 引用的jar包中bean名称冲突了,怎么解决?1.2)问题02:使用SparkSession将json字符串转成 DataFrame 二、06.01 周六2.1)问题01:系统架构师考试…...

「前端+鸿蒙」核心技术HTML5+CSS3(八)

1、网站布局详解 网站布局是前端开发中的核心概念之一,它决定了网页的视觉结构和用户浏览的逻辑顺序。以下是几种常见的布局方式及其代码示例: 固定布局: 固定布局通常具有固定的宽度和高度,适用于传统的桌面视图。 <!DOCTYPE html> <html> <head><…...

15届蓝桥杯决赛,java b组,蒟蒻赛时所写的题思路

这次题的数量是10题&#xff0c;初赛是8题&#xff0c;还多了两题&#xff0c;个人感觉java b组的题意还是比较清晰的&#xff08;不存在读不懂题的情况&#xff09;&#xff0c;但是时间感觉还是不够用&#xff0c;第4题一开始不会写&#xff0c;后面记起来写到结束也没调出来…...

2024蓝桥杯国赛C++研究生组游记+个人题解

Day0 开始复习&#xff0c;过了一遍大部分板子 本来打算再学一遍SAM&#xff0c;但是想到去年考了字符串大题今年应该不会再考了吧。。 过了一遍数据结构和图论&#xff0c;就1点了 两点的时候还没睡着&#xff0c;舍友打游戏好像打到2点过。。 Day1 相当困 第一题&…...

C#WPF数字大屏项目实战07--当日产量

1、第2列布局 第2列分三行&#xff0c;第一行分6列 2、当日产量布局 3、产量数据布局 运行效果 4、计划产量和完成度 运行效果 5、良品率布局 1、添加用户控件 2、用户控件绘制圆 2、使用用户控件 3、运行效果 4、注意点 这三个数值目前是静态的&#xff0c;可以由后台程序项…...

MyBatis源码分析--02:SqlSession建立过程

我们再来看看MyBatis使用流程&#xff1a; InputStream inputStream Resources.getResourceAsStream("myBatis_config.xml"); SqlSessionFactory sqlSessionFactory new SqlSessionFactoryBuilder().build(inputStream); SqlSession session sqlSessionFactory.op…...

SOUI Combobox 实现半透明弹出下拉框

SOUI默认情况下combobox的弹出框不是半透明的&#xff0c;这个时候如果背景透明时&#xff0c;滚动条会出现黑色背景&#xff0c;这个时候只需要在在combobox下添加一个子节点 <dropdownStyle translucent"1"></dropdownStyle> 这样一个窗口默认即实现…...

Python 猜数系统 PyQt框架 有GUI界面 (源码在最后)【含Python源码 MX_002期】

一、系统简介 猜数界面是一个基于PyQt框架创建的简单图形用户界面&#xff08;GUI&#xff09;&#xff0c;用于让用户参与猜数字游戏。简要介绍一下界面的各个部分&#xff1a; 游戏开始按钮&#xff1a;点击此按钮开始游戏。在点击前&#xff0c;需要在文本框中输入参与游戏…...

npm install pubsub-js报错的解决汇总

我在练习谷粒商城P83时&#xff0c;选择分类时触发向后端请求选择分类catId绑定的品牌数据&#xff0c;发现前端控制台报错&#xff1a; "PubSub is not definded",找不到pubsub。 因为缺少pubsub包&#xff0c;所以开始安装此包。 于是在网上一顿搜索猛如虎&…...

nuxt2:自定义指令 / v-xxx / directives / 理解 / 使用方法 / DEMO

一、理解自定义指令 在 vue 中提供了一些对于页面和数据更为方便的输出&#xff0c;这些操作就叫做指令&#xff0c;以 v-xxx 表示&#xff0c;比如 html 页面中的属性 <div v-xxx ></div>。自定义指令很大程度提高了开发效率&#xff0c;提高了工程化水平&#x…...

基础—SQL—DCL(数据控制语言)小结

一、总结 在SQL分类中的DCL语句部分&#xff0c;主要讲到了两个部分的知识。 1、用户管理 用户管理&#xff0c;主要是管理哪些用户可以访问当前 mysql 数据库。 包括&#xff1a;创建用户、修改用户密码以及删除用户 2、权限控制 权限管理&#xff0c;主要是控制我们当前用户…...

一文彻底讲透 PyTorch

节前&#xff0c;我们组织了一场算法岗技术&面试讨论会&#xff0c;邀请了一些互联网大厂朋友、今年参加社招和校招面试的同学。 针对大模型技术趋势、大模型落地项目经验分享、新手如何入门算法岗、该如何准备面试攻略、面试常考点等热门话题进行了深入的讨论。 汇总合集…...

JVM常用概念之锁粗化和循环

1.什么是锁粗化 锁粗化一般指有效地合并几个相邻的锁定块&#xff0c;从而减少锁定开销。如下述代码所示&#xff1a; 锁粗化前代码&#xff1a; synchronized (obj) {// statements 1 } synchronized (obj) {// statements 2 }锁粗化后代码&#xff1a; synchronized (obj)…...

HTML (总结黑马的)

<br>换行 <hr>水平线 div 独占一行 span 不换行 header 网页头部 nav 网页导航 footer 网页底部 aside 网页侧边栏 section 网页区块 article 网页文章 空格 < 小于号 > 大于号 图片&#xff1a; <img src"./cat.jpg" alt&q…...

开源智能体技术解析:从LangChain到自主抓取,构建自动化工作流

1. 项目概述&#xff1a;从“Awesome”列表看开源智能体生态的演进 最近在梳理一些前沿的自动化工具链时&#xff0c;又翻到了 mergisi/awesome-openclaw-agents 这个仓库。对于长期关注AI Agent&#xff08;智能体&#xff09;和自动化工作流开发的同行来说&#xff0c;这类…...

ARMv8-AArch64 异常处理实战:从寄存器解析到调试技巧

1. ARMv8-AArch64异常处理入门指南 第一次接触ARMv8架构的异常处理时&#xff0c;我被那一堆寄存器搞得头晕眼花。ELR、ESR、FAR...这些缩写看起来就像天书一样。但经过几个实际项目的磨练后&#xff0c;我发现只要掌握几个关键点&#xff0c;异常处理其实并没有想象中那么难。…...

高效视频帧提取终极指南:为深度学习构建专业数据集

高效视频帧提取终极指南&#xff1a;为深度学习构建专业数据集 【免费下载链接】video2frame Yet another easy-to-use tool to extract frames from videos, for deep learning and computer vision. 项目地址: https://gitcode.com/gh_mirrors/vi/video2frame 在计算机…...

技能工程化框架:从标准化定义到编排实战

1. 项目概述&#xff1a;从“技能”到“智能”的工程化桥梁在当今的软件开发领域&#xff0c;尤其是涉及复杂交互和自动化流程的场景&#xff0c;我们常常会听到“技能”这个词。它听起来很抽象&#xff0c;但如果你拆解过任何一款智能助手、自动化机器人或者一个大型的业务流程…...

终极qmcdump指南:5分钟掌握QQ音乐加密格式解密技巧

终极qmcdump指南&#xff1a;5分钟掌握QQ音乐加密格式解密技巧 【免费下载链接】qmcdump 一个简单的QQ音乐解码&#xff08;qmcflac/qmc0/qmc3 转 flac/mp3&#xff09;&#xff0c;仅为个人学习参考用。 项目地址: https://gitcode.com/gh_mirrors/qm/qmcdump qmcdump是…...

从0到1:手把手教你搭建VSCode(附避坑指南,拒绝报错),全程复制粘贴即可

&#x1f525;个人主页&#xff1a;北极的代码&#xff08;欢迎来访&#xff09; &#x1f3ac;作者简介&#xff1a;java后端学习者 ❄️个人专栏&#xff1a;苍穹外卖日记&#xff0c;SSM框架深入&#xff0c;JavaWeb ✨命运的结局尽可永在&#xff0c;不屈的挑战却不可须臾或…...

Obsidian智能模板终极指南:3步打造高效笔记自动化系统

Obsidian智能模板终极指南&#xff1a;3步打造高效笔记自动化系统 【免费下载链接】Templater A template plugin for obsidian 项目地址: https://gitcode.com/gh_mirrors/te/Templater Templater插件是Obsidian生态系统中功能最强大的智能模板解决方案&#xff0c;它能…...

乌尔都语语音合成落地难?揭秘ElevenLabs未公开的ur-PK语言代码陷阱与ISO 639-3双标适配规范(仅限首批127家认证开发者知晓)

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;乌尔都语语音合成落地难&#xff1f;揭秘ElevenLabs未公开的ur-PK语言代码陷阱与ISO 639-3双标适配规范&#xff08;仅限首批127家认证开发者知晓&#xff09; ElevenLabs 官方文档中仅标注 ur 为乌尔…...

Apache Burr:用状态机模式构建Python流式应用

1. 项目概述&#xff1a;一个用于构建流式应用的Python框架最近在折腾一些实时数据处理和模型推理的项目&#xff0c;从简单的日志分析到复杂的在线推荐&#xff0c;总感觉现有的工具链要么太重&#xff0c;要么太散。想要一个既能处理流式数据&#xff0c;又能轻松集成机器学习…...

基于Circuit Playground Express与NeoPixel的四季交互灯光装置设计与实现

1. 项目概述与核心思路几年前&#xff0c;我在一个艺术展上看到一组悬挂在枯树枝上的玻璃瓶&#xff0c;里面装着会呼吸般变幻光线的LED灯&#xff0c;那种静谧又灵动的美感让我念念不忘。作为一个喜欢把代码和电路“藏”进生活场景里的硬件爱好者&#xff0c;我一直在琢磨如何…...