MySQL约束:外键约束

news2024/9/29 19:23:48

下面先创建两张表用来作为实验样例 

1.创建dept表

create table dept(
	id int auto_increment comment 'ID' primary key,
	name varchar(50) not null comment '部门名称'
) comment '部门表';

INSERT INTO dept (id, name) VALUES (1, '研发部'), (2, '市场部'), (3, '财务部'), (4, '销售部'), (5, '总经办');

2. 创建emp表

create table emp(
	id int auto_increment comment 'ID' primary key,
	name varchar(50) not null comment '姓名',
	age int comment '年龄',
	job varchar(20) comment '职位',
	salary int comment '薪资',
	entrydate date comment '入职时间',
	managerid int comment '直属领导ID',
	dept_id int comment '部门ID'
) comment '员工表';

INSERT INTO emp(id, name, age, job, salary, entrydate, managerid, dept_id) VALUES
	(1, '金庸', 66, '总裁', 20000, '2000-01-01', null, 5), 
	(2, '张无忌', 20, '项目经理', 12500, '2005-12-05',1, 1), 
	(3, '杨逍', 33, '开发', 8400, '2000-11-03', 2, 1),
	(4, '韦一笑', 48, '开发', 11000, '2002-02-05', 2, 1),
	(5, '常遇春', 43, '开发', 10500, '2004-09-07', 3, 1),
	(6, '小昭', 19, '程序员鼓励师', 6600, '2004-10-12', 2, 1);
	

 当我们去看到dept里面的五个部门,没添加外键之前,我想随意删除一个,就比如研发部,我可以删除。

删除成功。当我们添加外键的时候,执行以下命令添加外键

alter table emp add constraint fk_emp_dept_id foreign key (dept_id) references dept(id);

 

里面有5和1,所以5和1是没办法删除的

 

 

 这个时候你要删除的话,上面会显示无法删除。

要是想取消外键的话,那么就需要执行以下命令

alter table emp drop foreign key fk_emp_dept_id;

这个时候就可以删除里面的数据了,就不会出现上面的错误。

贴一张黑马程序员的截图

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

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

相关文章

【C语言软开面经】

C语言软开面经 malloc calloc realloc free动态分配内存malloccalloc函数:realloc 函数:free函数: 堆栈-内存分区栈区(Stack):堆区(Heap):全局(静态&#xff…

哪个待办事项提醒软件推荐?待办事项提醒软件哪个合适?

在快节奏的现代生活中,我们每个人每天都会被各种待办事项所包围。从工作计划到个人生活,从学习任务到家庭琐事,这些事项往往繁杂且紧急,稍不留神就可能错过重要的截止日期。因此,选择一款合适的待办事项提醒软件&#…

Docker-2.如何保存数据退出

在使用Docker时,我们常常需要修改容器中的文件,并且希望在容器重启后这些修改能够得到保留。 0.简介 使用Docker时有一个需要注意的问题:当你修改了容器中的文件后,重启容器后这些修改将会被重置,深入研究这个问题。 …

如何高效运营知识产权,实现企业价值最大化?

知识产权的运营管理是指企业对其所拥有的专利、商标、著作权等知识产权进行规划、运用、保护和管理的一系列活动。这些活动旨在最大化知识产权的价值,促进企业的技术创新和市场竞争力的提升。通过有效的知识产权运营管理,企业可以实现技术成果的快速转化…

猝发传输和非猝发传输

猝发传输和非猝发传输是两种不同的数据传输方式,主要区别在于数据传输的连续性以及数据包的发送方式。 猝发传输 (Burst Transmission): 定义: 猝发传输是指在一段时间内,大量数据包集中发送,然后在一段时间内没有数据传输,这种…

全流程SWAP农业模型数据制备、敏感性分析及气候变化影响技术应用

SWAP模型是由荷兰瓦赫宁根大学开发的先进农作物模型,它综合考虑了土壤-水分-大气以及植被间的相互作用;是一种描述作物生长过程的一种机理性作物生长模型。它不但运用Richard方程,使其能够精确的模拟土壤中水分的运动,而且耦合了W…

HAL+M4学习记录_1

一、简介 基于Arm Cortex-M4的STM32F4 MCU系列采用了意法半导体的NVM工艺和ART Accelerator™,在高达180 MHz的工作频率下通过闪存执行时其处理性能达到225 DMIPS/608 CoreMark,这是迄今所有基于Cortex-M内核的微控制器产品所达到的最高基准测试分数。 这…

奖金高达 110 万元,Spatial Joy 2024 全球 AR 应用开发大赛启动

今年是AR应用开发大赛第三届,恰逢Rokid成立十周年,我们推出全新的大赛品牌“Spatial Joy”,引领开发者享受开发乐趣,为其打造充满挑战和惊喜的开发之旅,逐渐成为空间计算时代全球最大AR应用开发大赛。回顾大赛发展&…

MWORKS.Sysplorer 2024b重磅推出同元基础库

一、引言 MWORKS.Sysplorer 是多领域建模与仿真平台,集成了Modelica标准库。该库由Modelica协会开发,是一款开源的通用基础模型库,支持机电、流体、控制等多个专业领域的建模与仿真。随着Modelica标准库的不断发展与更新,目前最新…

自建RustDesk服务器:详细步骤与操作指南

在远程办公和协作日益普及的今天,远程桌面软件成为了不可或缺的工具。然而,许多知名的远程桌面软件,在免费使用一段时间后,会通过限制连接数量、时长或在特定网络环境下的可用性来促使用户付费升级,而且其会员非常昂贵…

第L4周:机器学习|K-近邻算法模型

本文为🔗365天深度学习训练营 中的学习记录博客原作者:K同学啊 任务: ●1. 学习本文的K-邻近算法 ●2. 了解 KNeighborsClassifier 函数 一、基本概念 商业哲学家 Jim Rohn 说过一句话,“你,就是你最常接触的五个人的…

KEIL中出现encountered an improper argument的解决办法

当使用KEIL软件时,有时候会遇见encountered an improper argument的错误提示框。如下图所示: encountered an improper argument翻译为:遇到不恰当的争论。出现该错误的原因一般有以下几种: 1、在我们在调试完结束时候&#xff0c…

跨学科数字教学知识库的建设挑战与解决方案

随着知识经济的不断发展和教育改革的深入,跨学科教学逐渐成为培养具有综合素质和创新能力的关键途径。在这一背景下,搭建跨学科数字教学知识库显得尤为重要。然而,跨学科知识的复杂性和多样性给知识库的建设带来了诸多挑战。本文旨在探讨这些…

JAVA毕业设计185—基于Java+Springboot+vue3+小程序的校园网上商店小程序系统(源代码+数据库)

毕设所有选题: https://blog.csdn.net/2303_76227485/article/details/131104075 基于JavaSpringbootvue3小程序的校园网上商店小程序系统(源代码数据库)185 一、系统介绍 本项目前后端分离(可以改为ssm版本),分为用户、商家、管理员三种角色 1、用户…

体验通义灵码高阶能力:代码生成增强

通义灵码提供了基于企业代码库进行行间代码生成检索增强的能力,在开发者使用通义灵码 IDE 插件的行间代码生成时,可以结合企业上传的代码库作为上下文进行行间代码补全,使代码补全更加贴合企业代码规范、业务特点。 开通通义灵码企业版&#…

C语言:排序(1)

目录 一、排序的概念及应用 排序的概念 排序的运用 二、常见排序算法 插入排序 基本思想 直接插入排序 希尔排序( 缩小增量排序 ) 选择排序 基本思想 堆排序 一、排序的概念及应用 排序的概念 排序:所谓排序,就是使一串记录,按照…

【MySQL实战45讲3】事务隔离

文章目录 事务事务四大特性(ACID) 隔离级别可重复读的使用场景可重复读隔离级别的实现 事务 事务就是要保证一组数据库操作,要么全部成功,要么全部失败。在MySQL中,事务支持是在引擎层实现的。MySQL是一个支持多引擎的…

EasyCVR智慧公园视频智能管理方案:赋能公园安全管理新高度

随着城市化进程的加速,智慧城市建设已成为提升城市管理效率、增强居民生活质量的重要途径。智慧公园作为智慧城市的重要组成部分,其安全与管理水平直接影响着市民的休闲娱乐体验。EasyCVR智慧公园视频智能管理方案,正是基于这一背景应运而生&…

android锁屏界面userActivity自动息屏深入剖析

背景: 近来有有个学员朋友在锁屏画面自动息屏有一些疑问求助马哥这边,大致情况描述如下: 问题1、锁屏画面不停的点击触摸发现锁屏画面会一直常亮,这里他知道锁屏这个window比较特殊,正常其他window在InputDispatcher…

nvm 安装node 报错

Could not retrieve https://npm.taobao.org/mirrors/node/latest/SHASUMS256.txt. Get "https://npm.taobao.org/mirrors/node/latest/SHASUMS256.txt": tls: failed to verify certificate: x509: certificate is valid for *.tbcdn.cn 原因认证过期, 查看nvm安装…