MySQL 如何刪除有外鍵約束的表數據

在MySQL中刪除一張表或一條數據的時候,出現
[Err] 1451 -Cannot deleteorupdatea parent row:
aforeignkeyconstraintfails (...)

這是由於MySQL中設置了foreign key關聯,形成沒法更新或刪除數據。能夠經過設置FOREIGN_KEY_CHECKS變量來避免這種狀況。

禁用外鍵約束,咱們能夠使用:

SETFOREIGN_KEY_CHECKS=0;

而後再刪除數據

啓動外鍵約束,咱們能夠使用:
SETFOREIGN_KEY_CHECKS=1;

查看當前FOREIGN_KEY_CHECKS的值,可用以下命令:
SELECT @@FOREIGN_KEY_CHECKS;變量

相關文章
相關標籤/搜索