MySQL record 05 part

外键
注意,外键所在的表一般被称为从表,被引用的表被称为主表
直接删除主表会报错,因为主表被从表(有外键的那个表)所引用,所以,删除主表(被引用数据的表)之前,要先删除子表(外键所在的表),然后再去删除主表,就不会报错了。
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
图中的注意第二条,所示外键名是不允许加引号的,不管是单引号也好还是双引号也好,都不允许。
在这里插入图片描述
通过外键去引用别的表中对应列的数据,之所以叫外键,是因为通过此键可以外接到其他表中的数据。

在这里插入图片描述

september2024the11thWednsday


创建外键语句:

ALTER TABLE student ADD CONSTRAINT fk_id FOREIGN KEY(gid) REFERENCES
grade(id);

创建外键后,通过表创建语句查看表的详细结构,结果如下:

CREATE TABLE student ( sid int NOT NULL, sname varchar(36)
DEFAULT NULL, gid int NOT NULL, PRIMARY KEY (sid), KEY
fk_id (gid), CONSTRAINT fk_id FOREIGN KEY (gid) REFERENCES
grade (id) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4
COLLATE=utf8mb4_0900_ai_ci

创建外键时,关于外键的语句:
KEY `fk_id` (`gid`),   
CONSTRAINT `fk_id` FOREIGN KEY (`gid`) 
REFERENCES `grade` (`id`)

在这里插入图片描述

删除外键语句:

ALTER TABLE student DROP FOREIGN KEY fk_id;

删除外键后,通过表创建语句查看表的详细结构,结果如下:

CREATE TABLE student ( sid int NOT NULL, sname varchar(36)
DEFAULT NULL, gid int NOT NULL, PRIMARY KEY (sid), KEY
fk_id (gid) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4
COLLATE=utf8mb4_0900_ai_ci
在这里插入图片描述

删除外键后,剩下的关于外键的语句:
KEY `fk_id` (`gid`) 

添加外键约束的参数说明:

这里是引用
cascade,小瀑布;层叠
这里可以理解为级联,意思是,改动一个表,另一个表也会被影响,注意,这里的改动,分为两个方向,一个是删除,另一个是更新,可以分别指定,即可以单独只指定删除,或者单独只指定更新,也可以同时指定删除和更新 。
在这里插入图片描述
例如,指定删除为级联(cascade)操作 ,指定更新为约束(restrict)操作

september2024the14thSaturday

删除外键

这里是引用
在这里插入图片描述
在这里插入图片描述

关联表的关系:
在这里插入图片描述
September15th2024Sunday


交叉连接:

在这里插入图片描述
在这里插入图片描述
本例交叉连接的结果是:
把所有的员工放入所有的部门中,4个部门中每个部门都有4个员工,所以是4x4=16条数据记录,
也可以从员工的角度看,那就是,每个员工都同时归属于4个部门,
在这里插入图片描述


内连接

在这里插入图片描述
employee:
在这里插入图片描述
department:
在这里插入图片描述
内连接查询:
SELECT employee.name,department.dname FROM department JOIN employee ON department.did=employee.did;
在这里插入图片描述

注意,在日常的查询语句中,各个字段之间一定要加上逗号,否则查询报错,如下:
SELECT employee.name,department.dname FROM department JOIN employee ON department.did=employee.did;
字段间有逗号的,语句会顺利执行,
SELECT employee.name department.dname FROM department JOIN employee ON department.did=employee.did;
字段间没有逗号的,语句执行时会报错,


外连接查询:

左外连接,以左表为主,
这里是引用示为空
右外连接,以右表为主,
在这里插入图片描述
不管左外还是右外,
1.谁在右侧,就以谁为主,
2.符合 ON 条件的记录,主表里的统统显示出来,从表规则是有的就显示,没有的要标记为NULL


复合条件连接查询:

在这里插入图片描述
举例:
SELECT employee.name,employee.age,department.dname FROM department JOIN employee ON department.did=employee.did ORDER BY age;
在这里插入图片描述


子查询

这里是引用
带有子查询的select语句,子查询会被小括号包起来,将先进行子查询,然后以拿到的结果作为过滤条件再继续查询,子查询先儿子再爸爸,
注意,子查询必须被小括号包围。

september2024the17thTuesday

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/142513.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

【宠物小精灵之收服(待更新)】

题目 代码 #include <bits/stdc.h> using namespace std; int f[1010][510]; int main() {int n, m, k;cin >> n >> m >> k;int c 0;for(int i 1; i < k; i){int cost, hp;cin >> cost >> hp;for(int j n; j > cost; j--){for(i…

EndnoteX9安装及使用教程

EndnoteX9安装及使用教程 一、EndNote安装 1.1 下载 这里提供一个下载链接&#xff1a; 链接&#xff1a;https://pan.baidu.com/s/1RlGJksQ67YDIhz4tBmph6Q 提取码&#xff1a;5210 解压完成后&#xff0c;如下所示&#xff1a; 1.2 安装 双击右键进行安装 安装比较简单…

ChatGPT有三个快捷指令和三个模式,你知道吗?

大家好&#xff0c;我是木易&#xff0c;一个持续关注AI领域的互联网技术产品经理&#xff0c;国内Top2本科&#xff0c;美国Top10 CS研究生&#xff0c;MBA。我坚信AI是普通人变强的“外挂”&#xff0c;专注于分享AI全维度知识&#xff0c;包括但不限于AI科普&#xff0c;AI工…

Vue3 项目实战甄选硅谷

1.技术选型 2.搭建Vue3 项目使用pnpm 1.安装pnpm pnpm安装 npm i -g pnpm 2.项目初始化 pnpm create vite cd ./project pnpm i pnpm run dev 初始化完成 3.项目开始之前先对项目进行一些配置 1.想让刚启动项目浏览器自动打开 找到 2.eslint配置 1.安装eslint pnpm…

Java算法总结

文章目录 一、链表相关1.1 从尾到头打印单链表[要求 方式1&#xff1a;反向遍历。方式2&#xff1a;Stack栈]1.2 josephu问题&#xff08;使用带尾指针的循环链表&#xff09; 二、动态规划2.1 斐波那契数列 2022.4.182.2 青蛙上台阶 2022.4.18 三、位运算符3.1 二进制中1的个数…

【Python爬虫系列】_023.关于视频爬取

课 程 推 荐我 的 个 人 主 页:👉👉 失心疯的个人主页 👈👈入 门 教 程 推 荐 :👉👉 Python零基础入门教程合集 👈👈虚 拟 环 境 搭 建 :👉👉 Python项目虚拟环境(超详细讲解) 👈👈PyQt5 系 列 教 程:👉👉 Python GUI(PyQt5)文章合集 👈👈…

全方位解读信息架构:从挑战到解决方案,推动企业数字化转型的全面指南

在数字经济迅猛发展的今天&#xff0c;信息架构 已经成为企业实现数字化转型、提高运营效率和优化 IT 投资的关键手段。无论是初创企业还是成熟企业&#xff0c;构建和实施有效的信息架构不仅能支持业务增长&#xff0c;还能确保数据安全和合规性。《信息架构&#xff1a;商业智…

如何在kotlin中给空字符串(””)和null值设置默认值问题?

&#x1f604;作者简介&#xff1a; 小曾同学.com,一个致力于测试开发的博主⛽️&#xff0c;主要职责&#xff1a;测试开发、CI/CD 如果文章知识点有错误的地方&#xff0c;还请大家指正&#xff0c;让我们一起学习&#xff0c;一起进步。 &#x1f60a; 座右铭&#xff1a;不…

回归预测|基于鲸鱼优化随机森林数据的数据回归预测Matlab程序 多特征输入单输出WOA-RF

回归预测|基于鲸鱼优化随机森林数据的数据回归预测Matlab程序 多特征输入单输出WOA-RF 文章目录 一、基本原理鲸鱼优化算法&#xff08;WOA&#xff09;随机森林&#xff08;RF&#xff09;WOA-RF的结合总结 二、实验结果三、核心代码四、代码获取五、总结 一、基本原理 WOA-R…

数据结构——树(终极版)

树的基本概念&#xff1a; 树的顶部是根节点也是树的入口 父节点&#xff1a;例如&#xff1a;B是F的父节点 子节点&#xff1a;树中的每个节点都可以有0个或多个子节点 叶子节点&#xff1a;像KLFGMIJ这种没有子节点的节点 节点的度&#xff1a;节点的子节点数&#xff1…

Minio环境搭建(单机安装包、docker)(一)

前言&#xff1a; 项目中客户不愿意掏钱买oss&#xff0c;无奈只能给他免费大保健来一套。本篇文章只是记录验证可行性&#xff0c;毕竟minio太少文档了&#xff0c;参考着官网来。后面还会再出一套验证集群部署的文章。 一、资料 MinIO官网&#xff1a; MinIO | S3 Compatib…

使用Qt 搭建简单雷达

目录 1.简易雷达图思维导图 2.结果展示图 3.制作流程 3.1表盘的绘制 3.1.1 绘制底色 ​编辑 3.1.2 绘制大圆 3.3.3绘制小圆 3.3.4 绘制小圆的内容 3.3.5 绘制表盘刻度和数字标注 3.3.6 绘制指针 3.3.7 绘制扇形 3.2 设置定时器让表盘动起来 3.3.1 设置动态指针…

Fastjson反序列化漏洞——JNDI注入

一.前言 之前使用反序列化和序列化时写入的到文件里面的&#xff0c;真实环境中&#xff0c;也是这样吗&#xff1f; 当然不是了&#xff0c;通过二进制&#xff0c;字节流数据进行的。 为什么会有JNDI&#xff1f; 由于http和ftp传输消耗资源仍然很大&#xff0c;就有了JRM…

EasyRecovery 17完美破解版 2024 年最新永久免费使用 EasyRecovery激活图文教程

我们在平时使用电脑或者操作文件过程中&#xff0c;或多或少都有过格式化文件或者为了方便&#xff0c;直接摁住了shifitdelete键&#xff1b;删除后发现&#xff0c;我们删错了&#xff0c;有些文件不是我们要删的&#xff0c;甚至有的文件是特别重要的&#xff1b;这时候恢复…

基于java 的医院排号管理系统设计与实现

博主介绍&#xff1a;专注于Java .net php phython 小程序 等诸多技术领域和毕业项目实战、企业信息化系统建设&#xff0c;从业十五余年开发设计教学工作 ☆☆☆ 精彩专栏推荐订阅☆☆☆☆☆不然下次找不到哟 我的博客空间发布了1000毕设题目 方便大家学习使用 感兴趣的可以…

【无人机设计与控制】四旋翼无人机俯仰姿态保持模糊PID控制(带说明报告)

摘要 为了克服常规PID控制方法在无人机俯仰姿态控制中的不足&#xff0c;本研究设计了一种基于模糊自适应PID控制的控制律。通过引入模糊控制器&#xff0c;实现了对输入输出论域的优化选择&#xff0c;同时解决了模糊规则数量与控制精度之间的矛盾。仿真结果表明&#xff0c;…

FastGPT一站式解决方案[2-应用篇]:轻松实现RAG-智能问答系统,AI工作流、核心模块讲解

FastGPT一站式解决方案[2-应用篇]:轻松实现RAG-智能问答系统,AI工作流、核心模块讲解 1.FastGPT快速使用:基本设置、核心模块讲解 1.1 知识库设置 首先我们需要创建一个知识库。 知识库创建完之后我们需要上传一点内容。 上传内容这里有四种模式: 手动输入:手动输入问…

【网络】高级IO——poll版本TCP服务器

目录 前言 一&#xff0c;poll函数 1.1.参数一:fds 1.2.参数二&#xff0c;nfds 1.3.参数三&#xff0c;timeout 1.4.返回值 1.5.poll函数简单使用示例 二&#xff0c;poll版TCP服务器编写 2.1.编写 2.2.poll的优缺点 2.3.源代码 前言 由于select函数有下面几个特别…

奥维互动地图经纬度导入,再导出ovjsn再转化为kml格式

一、使用python将excel表中的经纬度换算成小数格式。 在文件上看到的经纬度是东经 1165′27.78″&#xff0c;北纬 2310′57.18″&#xff0c;要转化为116.09105,23.182550000000003 格式。如果要用vba编写函数&#xff0c;可能比较麻烦&#xff0c;为此我使用python来转化 i…

【例题】lanqiao3412 最小化战斗力差距

样例输入 3 1 2 3样例输出 1说明 样例中&#xff0c;当 a[1,3]&#xff0c;b[2]&#xff0c;此时战斗力差距为 1&#xff0c;无法得到比 1 更小的安排方式。 解题思路 目标是|max(a)-min(b)|最小&#xff0c;希望a里的最大值和b里的最小值能差距最小。 转化成&#xff1a;…