データを一部消したいのですが、サーバーでは
「Mysql2::Error: Cannot delete or update a parent row: a foreign key constraint fails (moyamoya_development.cheers, CONSTRAINT fk_rails_77ac16afbb FOREIGN KEY (post_id) REFERENCES posts (id)): DELETE FROM posts WHERE posts.id = 8」
とエラーが表示されてしまいます。
Mysqlから消そうとすると「予定外の行数が削除されました!1 行が削除されませんでした。 テーブルを再読み込みして内容が変更されていないことを確認してください。 このテーブルの主キーにエラーの可能性があるのでコンソールを確認してください!」と表示されて消せません。
おそらく外部キー制約にひっかかっており、postsテーブルに当該ユーザに紐付くデータが存在しているのに、ユーザを削除しようとして怒られているものと思われますが、削除手順がいまいち分かりません。
外部キー制約に on delete cascade 属性をつけることで参照元を自動的に消えるか試しましたが、上手く行きませんでした。
解決方法を教えていただきたいと思います。よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。