sql >> データベース >  >> RDS >> Mysql

エラー1452(23000):子行を追加または更新できません:外部キー制約が失敗します

    この例外が発生する理由は、テーブルtest_usershostsにレコードを挿入しているためです。 userIDの値 テーブルtest_usersに存在しません 。 hidの値と同じ テーブルtest_hostsにも存在しません 。

    テーブルtest_usershosts テーブルに依存しています:test_users およびtest_hosts 。したがって、テーブルtest_usershostsにレコードを挿入するときは必ず確認してください 、hidの値 およびuserid 親テーブルにすでに存在します:test_users およびtest_hosts

    このクエリを実行してみてください。確実に挿入されます。

    INSERT INTO test_usershosts (RID,userid,hid,Usr,Pass) 
    VALUES (NULL,1120,30,'user','pass');
    

    AUTO_INCREMENTが表示されます テーブルのオプション:test_users およびtest_hosts 、2つのテーブルで実行しているすべてのクエリに値を指定しているため、必要ありません。



    1. SQLServerで1つのデータベースのアクティビティを分析する方法

    2. Laravelを使用したSSLを介したMySQL接続

    3. MySQLの異なる引用符

    4. mysqlでタイムスタンプ形式を変更する方法