EC-CUBEは外部キー制約によってデータの整合を保証しており、外部キー制約に違反したカスタマイズを行うと次のような外部キーに関するエラーが発生することがあります。
SQLSTATE[23000]: Integrity constraint violation: 1452 Cannot add or update a child row: a foreign key constraint fails (`database_name`.`main_table_name`, CONSTRAINT `FK_XXXXXXXXXXXX` FOREIGN KEY (`main_table_column`) REFERENCES `external_table` (`external_tabke_column`))”
テーブルに値を挿入・更新しようとしたときに、その値が外部キー参照先のテーブルの対象カラムに存在しないため、外部キー制約に関するエラーが発生しています。
対策としては、外部のテーブルから値を取得して登録するようにカスタマイズしたプログラムのロジックを見直してみてください。
EC-CUBEに関するお問い合わせ
[重要]現在公式にセキュリティサポートが切れていないPHPは8.1以上、MySQLは8.0以上で、対応しているEC-CUBEバージョンは4.2以上です。古いEC-CUBEを使っている方は適切なタイミングでバージョンアップをご検討ください。