コード 1451 の mysql エラーが発生しました。
親行を削除または更新できません: 外部キー制約が失敗しました (
online_store_admin
.osa_admin_logs
, CONSTRAINTfk_admins_logs
FOREIGN KEY (aid
) REFERENCESosa_admins
(aid
))
ここでSQL文:
osa_admins; 存在する場合はテーブルをドロップします。 存在しない場合はテーブルを作成する osa_admins( int unsigned not null auto_increment を支援します。 uid varchar(50) がヌルではありません。 null 以外の char(41) を渡します。 erp_id int unsigned not null, last_login int unsigned not null, is_block tinyint unsigned not null, メニュー varchar(50) が null ではない、 is_login tinyint unsigned not null, ip_login char(15) ヌルではない、 btree(aid) を使用した制約 idx_osa_admins 主キー ); osa_admins 値に挿入 (NULL, 'ルート', パスワード('6789'), '0', '0', '0', '*', '0', '127.000.000.001'), (NULL, 'ryu', password('6789'), '0', '0', '0', '*', '0', '127.000.000.001'); osa_admin_logs が存在する場合はテーブルをドロップします。 存在しない場合はテーブルを作成する osa_admin_logs( ふた bigint unsigned not null, int unsigned not null を支援します。 日付 int unsigned not null, null でないテキストをログに記録し、 btree(lid) を使用した制約 idx_osa_admin_logs 主キー、 制約 fk_admins_logs 外部キー (補助) 参照 osa_admins(aid) マッチフル 更新カスケードで カスケード削除時 ); osa_admin_logs 値に挿入 (NULL, '2', '0', 'アクションがここにある'), (NULL, '2', '0', '再び、ここでなんらかのアクション');
このステートメントを使用すると問題が発生します。
osa_admins where aid='2'; から削除します。
「カスケード削除」を設定したと思います。カスケードを削除する方法を知っている人はいますか? そのため、osa_admin_logs データを手動で削除する必要はありません。ああ、私はinnodbをdbエンジンとして使用しています(私が持っているデフォルトのmysql)。
申し訳ありませんが、回答があったのと同じ質問をします。質問を入手できる場所を教えてください。
ありがとうございました。