mysqlは外部チェーンインデックスデータを削除します。親行を削除または更新できません:外部キー制約が問題解決に失敗します

mysqlは外部リンクインデックスデータを削除します

親行を削除または更新できません:外部キー制約が失敗します問題の解決策
クエリ:DELETE FROM goodsWHERE goods_id= '11'
エラーコード:1451
親行を削除または更新できません:外部キー制約が失敗します(webDBgoods_properties_detail、CONSTRAINT FK_rip_43FOREIGN KEY (goods_id)参照goodsgoods_id))
上記は、レコードの特定のフィールドがInnoDB内の別のテーブルへの外部リンクとして使用されているためです。外部リンクは、削除操作中に自動的にチェックされます。
解決策1:最初に関連データを削除することを決定し、次に削除します(これは、ビジネスロジックに沿ったものであり、より安全です)。

解決策2:外部リンクをチェックせず、FOREIGN_KEY_CHECKS変数を設定します。

SET FOREIGN_KEY_CHECKS = 0;
DELETE FROM `goods` WHERE `goods_id` = '11'

削除後に設定

SET FOREIGN_KEY_CHECKS = 1;

ps:一意性チェックをオフにします

set unique_checks=0;
set unique_checks=1;

おすすめ

転載: blog.csdn.net/weixin_45627031/article/details/114759038