mysql - 如何在MySQL中临时禁用外键约束?

标签 mysql sql django django-models

是否可以在MySQL中暂时禁用约束?
我有两个Django模型,每个模型都有一个到另一个的外键。由于外键约束,删除模型实例将返回错误:

cursor.execute("DELETE FROM myapp_item WHERE n = %s", n)
transaction.commit_unless_managed()  #a foreign key constraint fails here

cursor.execute("DELETE FROM myapp_style WHERE n = %s", n)
transaction.commit_unless_managed()
是否可以暂时禁用约束并仍然删除?

最佳答案

尝试DISABLE KEYS

SET FOREIGN_KEY_CHECKS=0;
确保
SET FOREIGN_KEY_CHECKS=1;
后。

关于mysql - 如何在MySQL中临时禁用外键约束?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58921605/

相关文章:

php - 按年份过滤表格内容

python - django 中的 post_save 立即更新实例

php - mysql 列中的最低自由值

mysql - MySQL 和 MS SQL 语言之间的主要区别是什么?

python - Django 忘记了 .using 数据库来解析外键

python - 尽管添加到 INSTALLED_APPS,但找不到 Django 应用程序?

mysql - 如何在sequelize (Node.js) 中的应用程序启动时保存多个值

mysql - mysql中如何将表列数据添加到另一个类似的列表中

php - SQLSTATE[HY093] : error But i dont see why

Java-Sqlite 截断所有数据库表