ハマログ

株式会社イーツー・インフォの社員ブログ

EC-CUBEのシーケンス番号を変更する

EC-CUBEのID管理にはシーケンステーブルが利用されています。
dtb_order(受注テーブル)のIDなら、dtb_order_order_id_seqテーブルです。

このテーブル構造がsequenceという1カラムのみになっていて、付番済みの番号が1レコード格納されています。

——————–
sequence
——————–
999
——————–

データ移行などでシーケンス番号を任意の位置から開始するときに、この値を変更しても次の番号が上手く採番されず、別のレコードができます。

——————–
sequence
——————–
999000 ←手動で999000に変更
——————–

採番後

——————–
sequence
——————–
999000 ←インクリメントされない
——————–
1000 ←追加
——————–

これは、実際にはレコードの値を見ているわけではなく、sequenceカラムのAUTO_INCREMENTを利用して採番しているためでした。
ということで、シーケンス番号の変更はalter tableコマンドでおこないます。

ALTER TABLE dtb_order_detail_order_detail_id_seq AUTO_INCREMENT=999000;

以上です。

EC-CUBEsequenceシーケンス

kaneko tomo   kaneko tomo   2016年4月1日


関連記事

PHPでIMAP接続してメールを取得する

特定のメールアドレスで受信したメールをChatworkのAPIに送信するために、…

Pythonの環境構築(2)

前回は極めてお手軽にPythonの学習環境を構築してみました。 今回はpyenv…

Googleセーフブラウジングで警告が表示されてあせった話

Googleセーフブラウジング使っていますか? Googleがウェブサイトをクロ…


← 前の投稿

次の投稿 →