0

まず第一に、この件に関して多くの投稿があることは知っていますが、チェックしたものは役に立たなかったので、私の問題を投稿したかったのです。

私は、人々がユーザーとして登録してから、いくつかの異なるフォームに記入できるWebサイトを構築しています。私は2つのテーブルを持っています.1つは「ユーザー」で、もう1つは「フォーム」テーブルです。ユーザーテーブルには、auto_incremented の user_id があり、この ID は外部キーとして「フォーム」テーブルに接続されています。user_id を介してどのユーザーがフォームに入力したかを確認したい。記入済みのフォームをデータベースに登録しようとすると、「子行を追加または更新できません: 外部キー制約が失敗しました」というメッセージが表示されます。どうすればこれを修正できますか?

4

3 に答える 3

0

他のテーブルに同じデータがないというデータを外部キー列に追加しようとしています。

于 2012-05-13T17:21:30.307 に答える
0

user_id をユーザー テーブルの user_id を指す外部キーとしてフォーム テーブルに設定した場合、フォーム行を挿入するときに有効な user_id を指定する必要があります。

フォーム テーブルの user_id フィールドを NULL に設定できます。これは、設定する必要がないことを意味します。

于 2012-05-13T17:13:36.570 に答える
0

これは主に、テーブルにデータがあり、foreign_key を作成/編集/削除したい場合、または、foreign_key

したいフィールドがテーブル フィールドと同じ形式でない場合に発生します。

解決策:1)データのバックアップまたはコピーを作成する必要があります
2 )foreign_keysを削除します 3)テーブルからデータを切り捨てます 4)最後にforeign_keysを再アタッチします 5)データを更新します




役立つことを願っています

于 2013-03-20T10:22:39.327 に答える