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