csdnceshi62 2013-03-19 14:03 采纳率: 100%
浏览 181
已采纳

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

Is it possible to temporarily disable constraints in MySQL?

I have two Django models, each with a ForeignKey to the other one. Deleting instances of a model returns an error because of the ForeignKey constraint:

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()

Is it possible to temporarily disable constraints and delete anyway?

转载于:https://stackoverflow.com/questions/15501673/how-to-temporarily-disable-a-foreign-key-constraint-in-mysql

  • 写回答

10条回答 默认 最新

  • 三生石@ 2013-03-19 14:07
    关注

    Try DISABLE KEYS or

    SET FOREIGN_KEY_CHECKS=0;
    

    make sure to

    SET FOREIGN_KEY_CHECKS=1;
    

    after.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(9条)

报告相同问题?