Mysql - 删除表时出现: Cannot delete or update a parent row: a foreign key constraint fails

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介: Mysql - 删除表时出现: Cannot delete or update a parent row: a foreign key constraint fails

现象


MySQL在删除一张表时出现

ERROR 1217 (23000): Cannot delete or update a parent row: a foreign key constraint fails

 

原因


可能是在Mysql中,删除的表和另一张表设置了foreign key的关联,造成无法更新或删除数据;

 

解决方案


可以通过设置FOREIGN_KEY_CHECKS变量来避免这种情况。


禁用外键约束

SET FOREIGN_KEY_CHECKS =0;

然后就可以删除表了


删除完成后再启动外键约束

SET FOREIGN_KEY_CHECKS =1;

 

查看当前FOREIGN_KEY_CHECKS的值可用如下命令

SELECT  @@FOREIGN_KEY_CHECKS;

 

注意

这样设置只会影响当前会话, 不会影响全局

若想设置全局变量的话,可以这样写

SET GLOBAL FOREIGN_KEY_CHECKS =0;

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
4月前
|
SQL 关系型数据库 MySQL
MySQL DELETE 语句
MySQL DELETE 语句
|
4月前
|
SQL 关系型数据库 MySQL
MySQL UPDATE 更新
MySQL UPDATE 更新
|
2月前
|
SQL 关系型数据库 MySQL
MySQL技能完整学习列表3、SQL语言基础——1、SQL(Structured Query Language)简介——2、基本SQL语句:SELECT、INSERT、UPDATE、DELETE
MySQL技能完整学习列表3、SQL语言基础——1、SQL(Structured Query Language)简介——2、基本SQL语句:SELECT、INSERT、UPDATE、DELETE
51 0
|
26天前
|
关系型数据库 MySQL 数据安全/隐私保护
MySQL连接ERROR 2059 (HY000): Authentication plugin ‘caching_sha2_password‘ cannot be loaded
MySQL连接ERROR 2059 (HY000): Authentication plugin ‘caching_sha2_password‘ cannot be loaded
27 0
|
29天前
|
关系型数据库 MySQL
MySQL创建表出现 Specified key was too long; max key length is 767 bytes
MySQL创建表出现 Specified key was too long; max key length is 767 bytes
20 2
|
2月前
|
关系型数据库 MySQL 数据库
mysql如何正确的删除数据(drop,delete,truncate)
mysql如何正确的删除数据(drop,delete,truncate)
38 0
|
3月前
|
存储 缓存 关系型数据库
MySQL update执行流程到 redo log深入理解
MySQL update执行流程到 redo log深入理解
50 0
|
3月前
|
关系型数据库 MySQL 数据库
MySQL DELETE 语句
【1月更文挑战第4天】MySQL 使用讲解 第04期
|
3月前
|
SQL 关系型数据库 MySQL
MySQL UPDATE 更新
【1月更文挑战第3天】MySQL 使用讲解 第03期
|
4月前
|
关系型数据库 MySQL
零基础带你学习MySQL—foreign key 外键(二十六)
零基础带你学习MySQL—foreign key 外键(二十六)