在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;
總結
以上就是本文關于MySQL刪除有外鍵約束的表數據方法介紹的全部內容,希望對大家有所幫助。感興趣的朋友可以參閱:MySQL刪除表數據的方法 、MySQL 聲明變量及存儲過程分析 、幾個比較重要的MySQL變量 、MySQL prepare原理詳解等。有什么問題可以隨時留言,小編會及時回復大家。