ECCUBEで顧客データを移行した場合のPostgreSQLのシーケンスの操作

ECCUBEで古いバージョンから新しいバージョンに顧客情報を移行した場合、パスワードの暗号化や秘密の質問の暗号化に関しては

ECCUBEがうまく対応してくれます。

ただPostgreSQLの場合プライマリーキーが自動更新されてくれないので会員登録時に下記のようなエラーが出ます。

duplicate key value violates unique constraint

この場合はプライマリーキーのシーケンスを確認し更新しましょう。

[顧客テーブルの現在のシーケンスを確認]
SELECT last_value FROM dtb_customer_customer_id_seq;

[値の更新]
SELECT setval(‘dtb_customer_customer_id_seq’,(select max(customer_id) from dtb_customer));

このように値を最新の番号に更新してあげる必要があります。

Follow me!