首批通过分布式安全可靠测评,为关键业务系统打造
MySQL 模式外键约束变量 foreign_key_checks 在 session 级别下不生效
更新时间:2024-05-19 07:11
问题描述
OceanBase 数据库 MySQL 模式下,会话或者全局关闭外键检查变量 foreign_key_checks,在 DROP TABLE 时,依然需要先删除外键表或引用主表的外键,再删除主表,如果直接 DROP 主表,会出现如下报错。
ERROR 1217 (23000): Cannot delete or update a parent row: a foreign key constraint fails
适用版本
OceanBase 数据库 V2.x 和 V3.x 版本
问题原因
变量 foreign_key_checks 在 OceanBase 数据库 V2.x 和 V3.x 版本中,对 DDL 操作不生效。
解决方法
先删除外键表中引用主表的外键或者删除外键表,再删除主表。