EC-CUBEでデータ登録に関するカスタマイズを行っていると次のようなエラーが発生することがあります。
An exception occurred while executing a query: SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '0' for key 'PRIMARY'
これは既に登録されているプライマリーキーを重複して登録しようとしたときに発生します。このエラーが発生する場合、プログラムのロジックに欠陥があると考えられます。
EC-CUBEの多くのテーブルでは主キーに対してDoctrineで自動採番(オートインクリメント)するような定義を書いているので、あまり意識することはありません。
ただし複合プライマリーキーやマスタデータのように自身でプリマリーキーを指定できるようなテーブルのデータ登録で発生しやすい不具合・エラーです。
EC-CUBEに関するお問い合わせ
[重要]現在公式にセキュリティサポートが切れていないPHPは8.1以上、MySQLは8.0以上で、対応しているEC-CUBEバージョンは4.2以上です。古いEC-CUBEを使っている方は適切なタイミングでバージョンアップをご検討ください。