環境
NodeJS
MySQL
状況
別環境へのデータの復元的な処理を作ってて、
自動的にいろんなテーブルにinsertするような仕組みにしようとした中で出たエラーです。
エラー内容
Error Code: 1452. Cannot add or update a child row: a foreign key constraint fails (db_dd.tenant, CONSTRAINT <font color="DeepPink">dataFileRelation</font> FOREIGN KEY (code, nm) REFERENCES <font color="DeepPink">hogeFile</font> (code, e_nm)) 0.000 sec
解決方法
今回はhogeFileテーブルのカラムの外部キーがdataRelationテーブルにあるので、先にdataFileRelationテーブルをinsertしてしまうとhogeFileテーブルで参照できなくなり、不整合なデータとなってエラーとなるので、先にhogeFileテーブルのレコードを先にinsertする必要がある。