データ移行:EC-CUBE4からカスタマイズ版EC-CUBE4へ カテゴリデータ・商品データ
データベースMySQLを利用して運営されているサイトをカスタマイズ版へ移行されたい方への移行方法のご案内です。
  • 作業の前に必ずバックアップをお取り下さい。
  • データベースベースの移行についてはご自身の責任のもと作業をお願いいたします。
    復元等が不能になった場合など、こちらとしては責任を負いかねますので、その点どうぞご了承ください。
phpMyAdminの基本操作(必要に応じてご覧ください)
Ⅰ 移行元の操作(sqlをエクスポート)
移行元のsqlをダウンロード
  • ① 移行元のテーブルクリック。
  • ② 「エクスポート」タブをクリック。
  • ③ エクスポート方法の「詳細」をチェックする。
  • ④ フォーマット特有のオプションで、「データ」をチェックする。
  • ⑤ 「実行」をクリックしてダウンロードする。

Ⅱ 移行先の操作(テーブルを空にして、sqlをインポート)
外部キー制約なし
  • 移行元のCSVをインポート
    (1)空にするテーブルの「操作」タブをクリック、「テーブルを空にする」をクリック。
  • 移行元のCSVをインポート
    (2)sqlをインポートする。アップロードファイル→参照、「実行」をクリック。
外部キー制約あり(例.dtb_category)
  • 移行元のCSVをインポート
    (1)SQLを実行して外部キーを削除する。
    ---------------------------------
    ALTER TABLE dtb_product_category DROP FOREIGN KEY `FK_B057789112469DE2`;
    ---------------------------------
  • 移行元のCSVをインポート
    (2)空にするテーブルの「操作」タブをクリック、「テーブルを空にする」をクリック。
  • 移行元のCSVをインポート
    (3)sqlをインポートする。アップロードファイル→参照、「実行」をクリック。
  • 移行元のCSVをインポート
    (4)下記SQLを実行して参照元テーブルに外部キーを復元する。
    ---------------------------------
    DELETE FROM dtb_product_category WHERE category_id NOT IN( SELECT id FROM dtb_category );
    ALTER TABLE dtb_product_category ADD CONSTRAINT FK_B057789112469DE2 FOREIGN KEY (category_id) REFERENCES dtb_category (id) ON DELETE RESTRICT ON UPDATE RESTRICT;
    ---------------------------------
カテゴリデータ・商品データ
Ⅰ 移行元の操作
  • (1)まずは、商品画像を移行先にコピーします。
    ・移行元/html/upload/save_image/ から画像をダウンロードします。
    ・移行先/html/upload/save_image/ にアップロード(コピーします)
  • (2)各テーブルのsqlをダウンロード(エクスポート)します。
    ----------------------------------------
    ① dtb_category
    ② dtb_class_category
    ③ dtb_class_name
    ④ dtb_product
    ⑤ dtb_product_category
    ⑥ dtb_product_class
    ⑦ dtb_product_image
    ⑧ dtb_product_stock
    ⑨ dtb_product_tag
    ⑩ dtb_tag
    ----------------------------------------
Ⅱ 移行先の操作
  • 1 dtb_category
    外部キー制約あり。
    dtb_product_category
    ① Constraint properties→「FK_B057789112469DE2」
    ② カラム→「category_id」
    (1)下記SQLを実行して外部キーを削除する。
    ALTER TABLE dtb_product_category DROP FOREIGN KEY `FK_B057789112469DE2`;
    (2)dtb_categoryテーブルを空にする。
    (3)sqlをインポートする。アップロードファイル→参照、「実行」をクリック。
    (4)下記SQLを実行して参照元テーブルに外部キーを復元する。
    DELETE FROM dtb_product_category WHERE category_id NOT IN( SELECT id FROM dtb_category );
    ALTER TABLE dtb_product_category ADD CONSTRAINT FK_B057789112469DE2 FOREIGN KEY (category_id) REFERENCES dtb_category (id) ON DELETE RESTRICT ON UPDATE RESTRICT;
  • 2 dtb_class_category
    外部キー制約あり。
    dtb_product_class
    ① Constraint properties→「FK_1A11D1BA248D128」
    ② カラム→「class_category_id1」

    ③ Constraint properties→「FK_1A11D1BA9B418092」
    ④ カラム→「class_category_id2」
    (1)下記SQLを実行して外部キーを削除する。
    ALTER TABLE dtb_product_class DROP FOREIGN KEY `FK_1A11D1BA248D128`;
    ALTER TABLE dtb_product_class DROP FOREIGN KEY `FK_1A11D1BA9B418092`;
    (2)dtb_class_categoryテーブルを空にする。
    (3)sqlをインポートする。アップロードファイル→参照、「実行」をクリック。
    (4)下記SQLを実行して参照元テーブルに外部キーを復元する。
    DELETE FROM dtb_product_class WHERE class_category_id1 NOT IN( SELECT id FROM dtb_class_category );
    DELETE FROM dtb_product_class WHERE class_category_id2 NOT IN( SELECT id FROM dtb_class_category );
    ALTER TABLE dtb_product_class ADD CONSTRAINT FK_1A11D1BA248D128 FOREIGN KEY (class_category_id1) REFERENCES dtb_class_category (id) ON DELETE RESTRICT ON UPDATE RESTRICT;
    ALTER TABLE dtb_product_class ADD CONSTRAINT FK_1A11D1BA9B418092 FOREIGN KEY (class_category_id2) REFERENCES dtb_class_category (id) ON DELETE RESTRICT ON UPDATE RESTRICT;
  • 3 dtb_class_name
    外部キー制約あり。
    dtb_class_category
    ① Constraint properties→「FK_9B0D1DBAB462FB2A」
    ② カラム→「class_name_id」
    (1)下記SQLを実行して外部キーを削除する。
    ALTER TABLE dtb_class_category DROP FOREIGN KEY `FK_9B0D1DBAB462FB2A`;
    (2)dtb_class_nameテーブルを空にする。
    (3)sqlをインポートする。アップロードファイル→参照、「実行」をクリック。
    (4)下記SQLを実行して参照元テーブルに外部キーを復元する。
    DELETE FROM dtb_class_category WHERE class_name_id NOT IN( SELECT id FROM dtb_class_name );
    ALTER TABLE dtb_class_category ADD CONSTRAINT FK_9B0D1DBAB462FB2A FOREIGN KEY (class_name_id) REFERENCES dtb_class_name (id) ON DELETE RESTRICT ON UPDATE RESTRICT;
  • 4 dtb_product
    外部キー制約あり。
    ① dtb_product_class
    ・Constraint properties→「FK_1A11D1BA4584665A」
    ・カラム→「product_id」

    ② dtb_product_image
    ・Constraint properties→「FK_3267CC7A4584665A」
    ・カラム→「product_id」

    ③ dtb_product_tag
    ・Constraint properties→「FK_4433E7214584665A」
    ・カラム→「product_id」

    ④ dtb_tax_rule
    ・Constraint properties→「FK_59F696DE4584665A」
    ・カラム→「product_id」

    ⑤ dtb_order_item
    ・Constraint properties→「FK_A0C8C3ED4584665A」
    ・カラム→「product_id」

    ⑥ dtb_product_category
    ・Constraint properties→「FK_B05778914584665A」
    ・カラム→「product_id」

    ⑦ dtb_customer_favorite_product
    ・Constraint properties→「FK_ED6313834584665A」
    ・カラム→「product_id」
    (1)下記SQLを実行して外部キーを削除する。
    ALTER TABLE dtb_product_class DROP FOREIGN KEY `FK_1A11D1BA4584665A`;
    ALTER TABLE dtb_product_image DROP FOREIGN KEY `FK_3267CC7A4584665A`;
    ALTER TABLE dtb_product_tag DROP FOREIGN KEY `FK_4433E7214584665A`;
    ALTER TABLE dtb_tax_rule DROP FOREIGN KEY `FK_59F696DE4584665A`;
    ALTER TABLE dtb_order_item DROP FOREIGN KEY `FK_A0C8C3ED4584665A`;
    ALTER TABLE dtb_product_category DROP FOREIGN KEY `FK_B05778914584665A`;
    ALTER TABLE dtb_customer_favorite_product DROP FOREIGN KEY `FK_ED6313834584665A`;
    (2)dtb_productテーブルを空にする。
    (3)sqlをインポートする。アップロードファイル→参照、「実行」をクリック。
    (4)下記SQLを実行して参照元テーブルに外部キーを復元する。
    DELETE FROM dtb_product_class WHERE product_id NOT IN( SELECT id FROM dtb_product );
    DELETE FROM dtb_product_image WHERE product_id NOT IN( SELECT id FROM dtb_product );
    DELETE FROM dtb_product_tag WHERE product_id NOT IN( SELECT id FROM dtb_product );
    DELETE FROM dtb_product_tag WHERE product_id NOT IN( SELECT id FROM dtb_product );
    DELETE FROM dtb_order_item WHERE product_id NOT IN( SELECT id FROM dtb_product );
    DELETE FROM dtb_product_category WHERE product_id NOT IN( SELECT id FROM dtb_product );
    DELETE FROM dtb_customer_favorite_product WHERE product_id NOT IN( SELECT id FROM dtb_product );
    ALTER TABLE dtb_product_class ADD CONSTRAINT FK_1A11D1BA4584665A FOREIGN KEY (product_id) REFERENCES dtb_product (id) ON DELETE RESTRICT ON UPDATE RESTRICT;
    ALTER TABLE dtb_product_image ADD CONSTRAINT FK_3267CC7A4584665A FOREIGN KEY (product_id) REFERENCES dtb_product (id) ON DELETE RESTRICT ON UPDATE RESTRICT;
    ALTER TABLE dtb_product_tag ADD CONSTRAINT FK_4433E7214584665A FOREIGN KEY (product_id) REFERENCES dtb_product (id) ON DELETE RESTRICT ON UPDATE RESTRICT;
    ALTER TABLE dtb_product_tag ADD CONSTRAINT FK_59F696DE4584665A FOREIGN KEY (product_id) REFERENCES dtb_product (id) ON DELETE RESTRICT ON UPDATE RESTRICT;
    ALTER TABLE dtb_order_item ADD CONSTRAINT FK_A0C8C3ED4584665A FOREIGN KEY (product_id) REFERENCES dtb_product (id) ON DELETE RESTRICT ON UPDATE RESTRICT;
    ALTER TABLE dtb_product_category ADD CONSTRAINT FK_B05778914584665A FOREIGN KEY (product_id) REFERENCES dtb_product (id) ON DELETE RESTRICT ON UPDATE RESTRICT;
    ALTER TABLE dtb_customer_favorite_product ADD CONSTRAINT FK_ED6313834584665A FOREIGN KEY (product_id) REFERENCES dtb_product (id) ON DELETE RESTRICT ON UPDATE RESTRICT;
  • 5 dtb_product_category
    外部キー制約なし
    (1)空にする。
    (2)sqlインポート
  • 6 dtb_product_class
    外部キー制約あり。
    ① dtb_tax_rule
    ・Constraint properties→「FK_59F696DE21B06187」
    ・カラム→「product_class_id」

    ② dtb_order_item
    ・Constraint properties→「FK_A0C8C3ED21B06187」
    ・カラム→「product_class_id」

    ③ dtb_cart_item
    ・Constraint properties→「FK_B0228F7421B06187」
    ・カラム→「product_class_id」

    ④ dtb_product_stock
    ・Constraint properties→「FK_BC6C9E4521B06187」
    ・カラム→「product_class_id」
    (1)下記SQLを実行して外部キーを削除する。
    ALTER TABLE dtb_tax_rule DROP FOREIGN KEY `FK_59F696DE21B06187`;
    ALTER TABLE dtb_order_item DROP FOREIGN KEY `FK_A0C8C3ED21B06187`;
    ALTER TABLE dtb_cart_item DROP FOREIGN KEY `FK_B0228F7421B06187`;
    ALTER TABLE dtb_product_stock DROP FOREIGN KEY `FK_BC6C9E4521B06187`;
    (2)dtb_product_classテーブルを空にする。
    (3)sqlをインポートする。アップロードファイル→参照、「実行」をクリック。
    (4)下記SQLを実行して参照元テーブルに外部キーを復元する。
    DELETE FROM dtb_tax_rule WHERE product_class_id NOT IN( SELECT id FROM dtb_product_class );
    DELETE FROM dtb_order_item WHERE product_class_id NOT IN( SELECT id FROM dtb_product_class );
    DELETE FROM dtb_cart_item WHERE product_class_id NOT IN( SELECT id FROM dtb_product_class );
    DELETE FROM dtb_product_stock WHERE product_class_id NOT IN( SELECT id FROM dtb_product_class );
    ALTER TABLE dtb_tax_rule ADD CONSTRAINT FK_59F696DE21B06187 FOREIGN KEY (product_class_id) REFERENCES dtb_product_class (id) ON DELETE RESTRICT ON UPDATE RESTRICT;
    ALTER TABLE dtb_order_item ADD CONSTRAINT FK_A0C8C3ED21B06187 FOREIGN KEY (product_class_id) REFERENCES dtb_product_class (id) ON DELETE RESTRICT ON UPDATE RESTRICT;
    ALTER TABLE dtb_cart_item ADD CONSTRAINT FK_B0228F7421B06187 FOREIGN KEY (product_class_id) REFERENCES dtb_product_class (id) ON DELETE RESTRICT ON UPDATE RESTRICT;
    ALTER TABLE dtb_product_stock ADD CONSTRAINT FK_BC6C9E4521B06187 FOREIGN KEY (product_class_id) REFERENCES dtb_product_class (id) ON DELETE RESTRICT ON UPDATE RESTRICT;
  • 7 dtb_product_image
    外部キー制約なし
    (1)空にする。
    (2)sqlインポート
  • 8 dtb_product_stock
    外部キー制約なし
    (1)空にする。
    (2)sqlインポート
  • 9 dtb_product_tag
    dtb_product_tag自身に設定されている外部キー制約を削除する。(★他と異なる)
    dtb_tag
    ・Constraint properties→「FK_4433E721BAD26311」
    ・カラム→「tag_id」
    (1)下記SQLを実行して外部キーを削除する。
    ALTER TABLE dtb_product_tag DROP FOREIGN KEY `FK_4433E721BAD26311`;
    (2)dtb_product_tagテーブルを空にする。
    (3)sqlをインポートする。アップロードファイル→参照、「実行」をクリック。
    (4)下記SQLを実行して参照元テーブルに外部キーを復元する。
    DELETE FROM dtb_product_tag WHERE tag_id NOT IN( SELECT id FROM dtb_tag );
    ALTER TABLE dtb_product_tag ADD CONSTRAINT FK_4433E721BAD26311 FOREIGN KEY (tag_id) REFERENCES dtb_tag (id) ON DELETE RESTRICT ON UPDATE RESTRICT;
  • 10 dtb_tag
    外部キー制約あり。
    dtb_product_tag
    ・Constraint properties→「FK_4433E721BAD26311」
    ・カラム→「tag_id」
    (1)下記SQLを実行して外部キーを削除する。
    ALTER TABLE dtb_product_tag DROP FOREIGN KEY `FK_4433E721BAD26311`;
    (2)dtb_tagテーブルを空にする。
    (3)sqlをインポートする。アップロードファイル→参照、「実行」をクリック。
    (4)下記SQLを実行して参照元テーブルに外部キーを復元する。
    DELETE FROM dtb_product_tag WHERE tag_id NOT IN( SELECT id FROM dtb_tag ); ALTER TABLE dtb_product_tag ADD CONSTRAINT FK_4433E721BAD26311 FOREIGN KEY (tag_id) REFERENCES dtb_tag (id) ON DELETE RESTRICT ON UPDATE RESTRICT;
このページの先頭へ