在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;