1 商品データの移行
1 商品画像のダウンロードとアップロード
(1)現在のサイトから画像をダウンロード
- フォルダ:html/upload/save_image
-
サーバにアップロードされた画像は、下記のような名前に変わっていて、名前だけではどの画像なのか見当がつきません。
04211613_51739183a6c60.jpg -
save_imageフォルダのすべての画像をFTP等でダウンロードします。
フォルダごとまとめてダウンロードすると簡単でしょう。
(2)新規サイトへ画像をアップロード
- 新規サイトのフォルダ:html/upload/save_image
- ダウンロードしたすべての画像を上記フォルダにアップロードします。
(3)画像サイズについて
- EC-CUBEカスタマイズでは画像サイズを変更しています。
- 商品詳細ページでは、拡大-メイン画像を表示しています。
- 拡大-メイン画像が登録されていない場合は、通常-メイン画像が表示されます。
■EC-CUBEデフォルト
----------------------------------
一覧-メイン画像:130×130
通常-メイン画像:260×260
拡大-メイン画像:500×500
詳細-サブ画像:200×200
詳細-サブ拡大画像:500×500
----------------------------------
■EC-CUBEカスタマイズ
----------------------------------
一覧-メイン画像:130×130
通常-メイン画像:480×480
拡大-メイン画像:640×640
詳細-サブ画像:480×480
詳細-サブ拡大画像:640×640
----------------------------------
----------------------------------
一覧-メイン画像:130×130
通常-メイン画像:260×260
拡大-メイン画像:500×500
詳細-サブ画像:200×200
詳細-サブ拡大画像:500×500
----------------------------------
■EC-CUBEカスタマイズ
----------------------------------
一覧-メイン画像:130×130
通常-メイン画像:480×480
拡大-メイン画像:640×640
詳細-サブ画像:480×480
詳細-サブ拡大画像:640×640
----------------------------------
2 データベースの移行
■商品データの移行に必要なテーブルは次の通りです。
・dtb_products_class
・dtb_products_class_product_class_id_seq
・dtb_products_product_id_seq
・dtb_product_categories
・dtb_product_status
・dtb_category_category_id_seq
・dtb_category_count
・dtb_category_total_count
・dtb_classcategory
・dtb_classcategory_classcategory_id_seq
・dtb_class_class_id_seq
・dtb_review_review_id_seq
■カラム構造を同じにしてからエクスポートするテーブルは次の通りです。
・dtb_products
・dtb_products_class
・dtb_category
【商品データ】
・dtb_products・dtb_products_class
・dtb_products_class_product_class_id_seq
・dtb_products_product_id_seq
・dtb_product_categories
・dtb_product_status
【商品カテゴリ】
・dtb_category・dtb_category_category_id_seq
・dtb_category_count
・dtb_category_total_count
【商品の規格】
・dtb_class・dtb_classcategory
・dtb_classcategory_classcategory_id_seq
・dtb_class_class_id_seq
【関連商品】
・dtb_recommend_products【商品に対する書き込み】
・dtb_review・dtb_review_review_id_seq
■カラム構造を同じにしてからエクスポートするテーブルは次の通りです。
・dtb_products
・dtb_products_class
・dtb_category
【商品データ】
(1)dtb_productsの移行(カラム構造を同じにする)
◆画像で比較:EC-CUBE2.12系(左)と本サイトカスタマイズ2.13系
MySQL
PostgreSQL
-
カラム構造を同じにする
現在のサイトで、下記クエリを実行してカラムを追加し、同じカラム構造にしてください。 カラム数と順序を確認し、全く同じ構造にしてください。
ALTER TABLE dtb_products ADD noshi smallint NOT NULL DEFAULT 2; ALTER TABLE dtb_products ADD youtube text; ALTER TABLE dtb_products ADD map_url text; ALTER TABLE dtb_products ADD thumbnail_only smallint NOT NULL DEFAULT 2; ALTER TABLE dtb_products ADD ranking_mark int NOT NULL DEFAULT 1; ALTER TABLE dtb_products ADD arrival_date timestamp NULL; ALTER TABLE dtb_products ADD endsell_date timestamp NULL; ALTER TABLE dtb_products ADD pagetitle text; ALTER TABLE dtb_products ADD author text; ALTER TABLE dtb_products ADD description text; ALTER TABLE dtb_products ADD keywords text; ALTER TABLE dtb_products ADD head1 text; ALTER TABLE dtb_products ADD head2 text; ALTER TABLE dtb_products ADD head3 text; ALTER TABLE dtb_products ADD head4 text; ALTER TABLE dtb_products ADD head5 text; ALTER TABLE dtb_products ADD head6 text; ALTER TABLE dtb_products ADD head7 text; ALTER TABLE dtb_products ADD head8 text; ALTER TABLE dtb_products ADD head9 text; ALTER TABLE dtb_products ADD head10 text; ALTER TABLE dtb_products ADD sub_title7 text; ALTER TABLE dtb_products ADD sub_comment7 text; ALTER TABLE dtb_products ADD sub_image7 text; ALTER TABLE dtb_products ADD sub_large_image7 text; ALTER TABLE dtb_products ADD sub_title8 text; ALTER TABLE dtb_products ADD sub_comment8 text; ALTER TABLE dtb_products ADD sub_image8 text; ALTER TABLE dtb_products ADD sub_large_image8 text; ALTER TABLE dtb_products ADD sub_title9 text; ALTER TABLE dtb_products ADD sub_comment9 text; ALTER TABLE dtb_products ADD sub_image9 text; ALTER TABLE dtb_products ADD sub_large_image9 text; ALTER TABLE dtb_products ADD sub_title10 text; ALTER TABLE dtb_products ADD sub_comment10 text; ALTER TABLE dtb_products ADD sub_image10 text; ALTER TABLE dtb_products ADD sub_large_image10 text;
- 移行元が同じカラム構造になったら、dtb_productsをエクスポートします。
-
移行先(EC-CUBEカスタマイズ)の、dtb_productsテーブルを空にします。
- 続けて、エクスポートしたdtb_products.sql(dump.csv)を、インポートします。
-
移行元のテーブルから、追加したカラムを削除する場合は、下記クエリを実行すると削除できます。
ALTER TABLE dtb_products DROP noshi; ALTER TABLE dtb_products DROP youtube; ALTER TABLE dtb_products DROP map_url; ALTER TABLE dtb_products DROP thumbnail_only; ALTER TABLE dtb_products DROP ranking_mark; ALTER TABLE dtb_products DROP arrival_date; ALTER TABLE dtb_products DROP endsell_date; ALTER TABLE dtb_products DROP pagetitle; ALTER TABLE dtb_products DROP author; ALTER TABLE dtb_products DROP description; ALTER TABLE dtb_products DROP keywords; ALTER TABLE dtb_products DROP head1; ALTER TABLE dtb_products DROP head2; ALTER TABLE dtb_products DROP head3; ALTER TABLE dtb_products DROP head4; ALTER TABLE dtb_products DROP head5; ALTER TABLE dtb_products DROP head6; ALTER TABLE dtb_products DROP head7; ALTER TABLE dtb_products DROP head8; ALTER TABLE dtb_products DROP head9; ALTER TABLE dtb_products DROP head10; ALTER TABLE dtb_products DROP sub_title7; ALTER TABLE dtb_products DROP sub_comment7; ALTER TABLE dtb_products DROP sub_image7; ALTER TABLE dtb_products DROP sub_large_image7; ALTER TABLE dtb_products DROP sub_title8; ALTER TABLE dtb_products DROP sub_comment8; ALTER TABLE dtb_products DROP sub_image8; ALTER TABLE dtb_products DROP sub_large_image8; ALTER TABLE dtb_products DROP sub_title9; ALTER TABLE dtb_products DROP sub_comment9; ALTER TABLE dtb_products DROP sub_image9; ALTER TABLE dtb_products DROP sub_large_image9; ALTER TABLE dtb_products DROP sub_title10; ALTER TABLE dtb_products DROP sub_comment10; ALTER TABLE dtb_products DROP sub_image10; ALTER TABLE dtb_products DROP sub_large_image10;
(2)dtb_products_classの移行(カラム構造を同じにする)
◆画像で比較:EC-CUBE2.12系(左)と本サイトカスタマイズ2.13系
MySQL
PostgreSQL
-
カラム構造を同じにする
現在のサイトで、下記クエリを実行してカラムを追加し、同じカラム構造にしてください。 カラム数と順序を確認し、全く同じ構造にしてください。
ALTER TABLE dtb_products_class ADD price03 numeric; ALTER TABLE dtb_products_class ADD class_image text;
▼送料区分版をご利用の方はこちらになります。ALTER TABLE dtb_products_class ADD price03 numeric; ALTER TABLE dtb_products_class ADD class_image text; ALTER TABLE dtb_products_class ADD soryo_kubun smallint NOT NULL DEFAULT 0;
- 移行元が同じカラム構造になったら、dtb_products_classをエクスポートします。
-
移行先(EC-CUBEカスタマイズ)の、dtb_products_classテーブルを空にします。
- 続けて、エクスポートしたdtb_products_class.sql(dump.csv)を、インポートします。
-
移行元のテーブルから、追加したカラムを削除する場合は、下記クエリを実行すると削除できます。
ALTER TABLE dtb_products_class DROP price03; ALTER TABLE dtb_products_class DROP class_image;
▼送料区分版をご利用の方はこちらになります。ALTER TABLE dtb_products_class DROP price03; ALTER TABLE dtb_products_class DROP class_image; ALTER TABLE dtb_products_class DROP soryo_kubun;
(3)dtb_products_class_product_class_id_seqの移行
ここは数量のデータです。
移行元のエクスポートファイルを、移行先にそのままインポートします。
もしも、移行先にdtb_classcategory_classcategory_id_seqが存在しない場合は、あとで自動的に生成されますので、インポートの必要はありません。
dtb_classcategoryのclasscategory_idと、dtb_classcategory_classcategory_id_seqの最終値に整合性がとれていないと、IDの重複が起こったり、システムエラーの原因になります。
下記SQLで再設定します。
移行元のエクスポートファイルを、移行先にそのままインポートします。
もしも、移行先にdtb_classcategory_classcategory_id_seqが存在しない場合は、あとで自動的に生成されますので、インポートの必要はありません。
【PostgreSQLの場合】
シーケンスに登録されます。dtb_classcategoryのclasscategory_idと、dtb_classcategory_classcategory_id_seqの最終値に整合性がとれていないと、IDの重複が起こったり、システムエラーの原因になります。
下記SQLで再設定します。
select setval('dtb_products_class_product_class_id_seq',(select max(product_class_id) from dtb_products_class));
(4)dtb_products_product_id_seqの移行
ここは数量のデータです。
移行元のエクスポートファイルを、移行先にそのままインポートします。
もしも、移行先にdtb_products_product_id_seqが存在しない場合は、あとで自動的に生成されますので、インポートの必要はありません。
dtb_productsのproduct_idと、dtb_products_product_id_seqの最終値に整合性がとれていないと、IDの重複が起こったり、システムエラーの原因になります。
下記SQLで再設定します。
移行元のエクスポートファイルを、移行先にそのままインポートします。
もしも、移行先にdtb_products_product_id_seqが存在しない場合は、あとで自動的に生成されますので、インポートの必要はありません。
【PostgreSQLの場合】
シーケンスに登録されます。dtb_productsのproduct_idと、dtb_products_product_id_seqの最終値に整合性がとれていないと、IDの重複が起こったり、システムエラーの原因になります。
下記SQLで再設定します。
select setval('dtb_products_product_id_seq',(select max(product_id) from dtb_products));
(5)dtb_product_categoriesテーブルの移行
カラム構造に違いはありません。
移行元のエクスポートファイルを、移行先にそのままインポートします。
移行元のエクスポートファイルを、移行先にそのままインポートします。
(6)dtb_product_statusテーブルの移行
カラム構造に違いはありません。
移行元のエクスポートファイルを、移行先にそのままインポートします。
移行元のエクスポートファイルを、移行先にそのままインポートします。
【商品カテゴリ】
(1)dtb_categoryの移行(カラム構造を同じにする)
◆画像で比較:EC-CUBE2.12系(左)と本サイトカスタマイズ2.13系
MySQL
PostgreSQL
-
カラム構造を同じにする
現在のサイトで、下記クエリを実行してカラムを追加し、同じカラム構造にしてください。 カラム数と順序を確認し、全く同じ構造にしてください。
ALTER TABLE dtb_category ADD pagetitle text; ALTER TABLE dtb_category ADD author text; ALTER TABLE dtb_category ADD description text; ALTER TABLE dtb_category ADD keywords text; ALTER TABLE dtb_category ADD category_image text;
- 移行元が同じカラム構造になったら、dtb_categoryをエクスポートします。
-
移行先(EC-CUBEカスタマイズ)の、dtb_categoryテーブルを空にします。
- 続けて、エクスポートしたdtb_category.sql(dump.csv)を、インポートします。
-
移行元のテーブルから、追加したカラムを削除する場合は、下記クエリを実行すると削除できます。
ALTER TABLE dtb_category DROP pagetitle; ALTER TABLE dtb_category DROP author; ALTER TABLE dtb_category DROP description; ALTER TABLE dtb_category DROP keywords; ALTER TABLE dtb_category DROP category_image;
(2)dtb_category_category_id_seqの移行
ここは数量のデータです。
移行元のエクスポートファイルを、移行先にそのままインポートします。
もしも、移行先にdtb_category_category_id_seqが存在しない場合は、あとで自動的に生成されますので、インポートの必要はありません。
dtb_categoryのcategory_idと、dtb_category_category_id_seqの最終値に整合性がとれていないと、IDの重複が起こったり、システムエラーの原因になります。
下記SQLで再設定します。
移行元のエクスポートファイルを、移行先にそのままインポートします。
もしも、移行先にdtb_category_category_id_seqが存在しない場合は、あとで自動的に生成されますので、インポートの必要はありません。
【PostgreSQLの場合】
シーケンスに登録されます。dtb_categoryのcategory_idと、dtb_category_category_id_seqの最終値に整合性がとれていないと、IDの重複が起こったり、システムエラーの原因になります。
下記SQLで再設定します。
select setval('dtb_category_category_id_seq',(select max(category_id) from dtb_category));
(3)dtb_category_countの移行
カラム構造に違いはありません。
移行元のエクスポートファイルを、移行先にそのままインポートします。
移行元のエクスポートファイルを、移行先にそのままインポートします。
(4)dtb_category_total_countの移行
カラム構造に違いはありません。
移行元のエクスポートファイルを、移行先にそのままインポートします。
移行元のエクスポートファイルを、移行先にそのままインポートします。
【商品の規格】
(1)dtb_classの移行
カラム構造に違いはありません。
移行元のエクスポートファイルを、移行先にそのままインポートします。
移行元のエクスポートファイルを、移行先にそのままインポートします。
(2)dtb_classcategoryの移行
カラム構造に違いはありません。
移行元のエクスポートファイルを、移行先にそのままインポートします。
移行元のエクスポートファイルを、移行先にそのままインポートします。
(3)dtb_classcategory_classcategory_id_seqの移行
ここは数量のデータです。
移行元のエクスポートファイルを、移行先にそのままインポートします。
もしも、移行先にdtb_classcategory_classcategory_id_seqが存在しない場合は、あとで自動的に生成されますので、インポートの必要はありません。
dtb_classcategoryのclasscategory_idと、dtb_classcategory_classcategory_id_seqの最終値に整合性がとれていないと、IDの重複が起こったり、システムエラーの原因になります。
下記SQLで再設定します。
移行元のエクスポートファイルを、移行先にそのままインポートします。
もしも、移行先にdtb_classcategory_classcategory_id_seqが存在しない場合は、あとで自動的に生成されますので、インポートの必要はありません。
【PostgreSQLの場合】
シーケンスに登録されます。dtb_classcategoryのclasscategory_idと、dtb_classcategory_classcategory_id_seqの最終値に整合性がとれていないと、IDの重複が起こったり、システムエラーの原因になります。
下記SQLで再設定します。
select setval('dtb_classcategory_classcategory_id_seq',(select max(classcategory_id) from dtb_classcategory));
(4)dtb_class_class_id_seqの移行
ここは数量のデータです。
移行元のエクスポートファイルを、移行先にそのままインポートします。
もしも、移行先にdtb_class_class_id_seqが存在しない場合は、あとで自動的に生成されますので、インポートの必要はありません。
dtb_classのclass_idと、dtb_class_class_id_seqの最終値に整合性がとれていないと、IDの重複が起こったり、システムエラーの原因になります。
下記SQLで再設定します。
移行元のエクスポートファイルを、移行先にそのままインポートします。
もしも、移行先にdtb_class_class_id_seqが存在しない場合は、あとで自動的に生成されますので、インポートの必要はありません。
【PostgreSQLの場合】
シーケンスに登録されます。dtb_classのclass_idと、dtb_class_class_id_seqの最終値に整合性がとれていないと、IDの重複が起こったり、システムエラーの原因になります。
下記SQLで再設定します。
select setval('dtb_class_class_id_seq',(select max(class_id) from dtb_class));
【商品の規格】
dtb_recommend_productsの移行
カラム構造に違いはありません。
移行元のエクスポートファイルを、移行先にそのままインポートします。
移行元のエクスポートファイルを、移行先にそのままインポートします。
【商品に対する書き込み】
(1)dtb_reviewの移行
カラム構造に違いはありません。
移行元のエクスポートファイルを、移行先にそのままインポートします。
移行元のエクスポートファイルを、移行先にそのままインポートします。
(2)dtb_review_review_id_seqの移行
ここは数量のデータです。
移行元のエクスポートファイルを、移行先にそのままインポートします。
もしも、移行先にdtb_review_review_id_seqが存在しない場合は、あとで自動的に生成されますので、インポートの必要はありません。
dtb_reviewのreview_idと、dtb_review_review_id_seqの最終値に整合性がとれていないと、IDの重複が起こったり、システムエラーの原因になります。
下記SQLで再設定します。
移行元のエクスポートファイルを、移行先にそのままインポートします。
もしも、移行先にdtb_review_review_id_seqが存在しない場合は、あとで自動的に生成されますので、インポートの必要はありません。
【PostgreSQLの場合】
シーケンスに登録されます。dtb_reviewのreview_idと、dtb_review_review_id_seqの最終値に整合性がとれていないと、IDの重複が起こったり、システムエラーの原因になります。
下記SQLで再設定します。
select setval('dtb_review_review_id_seq',(select max(review_id) from dtb_review));