質問 > 管理機能 > 誤ってphpmyadminでdtb_orderテーブルを削除してしまった |
管理機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
junichi_ka |
投稿日時: 2020/5/27 10:25
対応状況: −−−
|
常連 登録日: 2013/11/25 居住地: 投稿: 47 |
誤ってphpmyadminでdtb_orderテーブルを削除してしまった ▼テンプレート
[EC-CUBE] EC-CUBEのバージョン4 [レンタルサーバ] さくらインターネット [OS] macos X [PHP] [データベース] [WEBサーバ] [ブラウザ] [現象] ECCUBE4でテスト受注データを削除しようとしたところ、phpmyadminにてdtb_orderテーブルをまるごと誤って削除してしまいました。まだ開店前ですので中身のデータは必要ないのですが、システムエラーとなってしまいます。dtb_orderテーブルを追加したいのですが、デフォルト状態でもいいのですが、中身がわからない状態です。どのようにテーブルを追加すればいいか何卒ご教授何卒お願い致します。 |
468 |
投稿日時: 2020/5/27 10:53
対応状況: −−−
|
神 登録日: 2008/10/26 居住地: 投稿: 3217 |
Re: 誤ってphpmyadminでdtb_orderテーブルを削除してしまった 4.0.いくつのバージョンでしょうか?
4.0.3で私の環境でmysqlでdumpしたSQLは以下の通りでした。 CREATE TABLE IF NOT EXISTS `dtb_order` ( `id` int(10) unsigned NOT NULL, `customer_id` int(10) unsigned DEFAULT NULL, `country_id` smallint(5) unsigned DEFAULT NULL, `pref_id` smallint(5) unsigned DEFAULT NULL, `sex_id` smallint(5) unsigned DEFAULT NULL, `job_id` smallint(5) unsigned DEFAULT NULL, `payment_id` int(10) unsigned DEFAULT NULL, `device_type_id` smallint(5) unsigned DEFAULT NULL, `pre_order_id` varchar(255) DEFAULT NULL, `order_no` varchar(255) DEFAULT NULL, `message` varchar(4000) DEFAULT NULL, `name01` varchar(255) NOT NULL, `name02` varchar(255) NOT NULL, `kana01` varchar(255) DEFAULT NULL, `kana02` varchar(255) DEFAULT NULL, `company_name` varchar(255) DEFAULT NULL, `email` varchar(255) DEFAULT NULL, `phone_number` varchar(14) DEFAULT NULL, `postal_code` varchar(8) DEFAULT NULL, `addr01` varchar(255) DEFAULT NULL, `addr02` varchar(255) DEFAULT NULL, `birth` datetime DEFAULT NULL COMMENT '(DC2Type:datetimetz)', `subtotal` decimal(12,2) unsigned NOT NULL DEFAULT '0.00', `discount` decimal(12,2) unsigned NOT NULL DEFAULT '0.00', `delivery_fee_total` decimal(12,2) unsigned NOT NULL DEFAULT '0.00', `charge` decimal(12,2) unsigned NOT NULL DEFAULT '0.00', `tax` decimal(12,2) unsigned NOT NULL DEFAULT '0.00', `total` decimal(12,2) unsigned NOT NULL DEFAULT '0.00', `payment_total` decimal(12,2) unsigned NOT NULL DEFAULT '0.00', `payment_method` varchar(255) DEFAULT NULL, `note` varchar(4000) DEFAULT NULL, `create_date` datetime NOT NULL COMMENT '(DC2Type:datetimetz)', `update_date` datetime NOT NULL COMMENT '(DC2Type:datetimetz)', `order_date` datetime DEFAULT NULL COMMENT '(DC2Type:datetimetz)', `payment_date` datetime DEFAULT NULL COMMENT '(DC2Type:datetimetz)', `currency_code` varchar(255) DEFAULT NULL, `complete_message` longtext, `complete_mail_message` longtext, `add_point` decimal(12,0) unsigned NOT NULL DEFAULT '0', `use_point` decimal(12,0) unsigned NOT NULL DEFAULT '0', `order_status_id` smallint(5) unsigned DEFAULT NULL, `discriminator_type` varchar(255) NOT NULL ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8; ALTER TABLE `dtb_order` ADD PRIMARY KEY (`id`), ADD UNIQUE KEY `dtb_order_pre_order_id_idx` (`pre_order_id`), ADD KEY `IDX_1D66D8079395C3F3` (`customer_id`), ADD KEY `IDX_1D66D807F92F3E70` (`country_id`), ADD KEY `IDX_1D66D807E171EF5F` (`pref_id`), ADD KEY `IDX_1D66D8075A2DB2A0` (`sex_id`), ADD KEY `IDX_1D66D807BE04EA9` (`job_id`), ADD KEY `IDX_1D66D8074C3A3BB` (`payment_id`), ADD KEY `IDX_1D66D8074FFA550E` (`device_type_id`), ADD KEY `IDX_1D66D807D7707B45` (`order_status_id`), ADD KEY `dtb_order_email_idx` (`email`), ADD KEY `dtb_order_order_date_idx` (`order_date`), ADD KEY `dtb_order_payment_date_idx` (`payment_date`), ADD KEY `dtb_order_update_date_idx` (`update_date`), ADD KEY `dtb_order_order_no_idx` (`order_no`); ALTER TABLE `dtb_order` MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=1; ALTER TABLE `dtb_order` ADD CONSTRAINT `FK_1D66D8074C3A3BB` FOREIGN KEY (`payment_id`) REFERENCES `dtb_payment` (`id`), ADD CONSTRAINT `FK_1D66D8074FFA550E` FOREIGN KEY (`device_type_id`) REFERENCES `mtb_device_type` (`id`), ADD CONSTRAINT `FK_1D66D8075A2DB2A0` FOREIGN KEY (`sex_id`) REFERENCES `mtb_sex` (`id`), ADD CONSTRAINT `FK_1D66D8079395C3F3` FOREIGN KEY (`customer_id`) REFERENCES `dtb_customer` (`id`), ADD CONSTRAINT `FK_1D66D807BE04EA9` FOREIGN KEY (`job_id`) REFERENCES `mtb_job` (`id`), ADD CONSTRAINT `FK_1D66D807E171EF5F` FOREIGN KEY (`pref_id`) REFERENCES `mtb_pref` (`id`), ADD CONSTRAINT `FK_1D66D807F92F3E70` FOREIGN KEY (`country_id`) REFERENCES `mtb_country` (`id`);
|
junichi_ka |
投稿日時: 2020/5/27 11:05
対応状況: −−−
|
常連 登録日: 2013/11/25 居住地: 投稿: 47 |
Re: 誤ってphpmyadminでdtb_orderテーブルを削除してしまった 早速のご連絡ありがとうございます。
2・3週間前にインストールしたところですので最新だと思います。 頂いたデータまるまるphpmyadmin上で実行してみたのですが、 「#1215 - 外部キー制約を追加できません。」 とでてテーブルが追加出来ない状況なんです・・・ これは再インストールでしょうかね・・・・・・ |
468 |
投稿日時: 2020/5/27 11:23
対応状況: −−−
|
神 登録日: 2008/10/26 居住地: 投稿: 3217 |
Re: 誤ってphpmyadminでdtb_orderテーブルを削除してしまった データベース上に外部キー制約が残っているのでしょうか?
phpMyAdminのバージョンによってはSQLの実行画面に 外部キー制約を無視する旨のチェックボックスがあったと思いますが それがなければSQLの先頭に SET FOREIGN_KEY_CHECKS = 0; を付けて実行してみてください。 私が自分で操作するのであれば、残っている制約等を確認して 必要な分だけSQLを実行しますが その辺りの判断がつかないのであれば、再インストールされたほうが確実かと思います。
|
junichi_ka |
投稿日時: 2020/5/27 14:28
対応状況: −−−
|
常連 登録日: 2013/11/25 居住地: 投稿: 47 |
Re: 誤ってphpmyadminでdtb_orderテーブルを削除してしまった ありがとうございました。phpmyadminでテーブル一つ消しただけで、再インストールまで追い込まれるとはおもいませんでした。インストール・制作に1月程度、まもなく開店のときに受注履歴を消しておきたい人もおられると思いますが、今回良い勉強となりました。
インストールしたばかりのDBからテーブルだけ抜いてきても動かずで、再インストール、商品データはCSVから復元、デザインデータはサーバーのものをまるごと写し込んでなんとか復元まで行けました。 バックアップが必須ですね。ほんとこれは怖い・・ siro8様 ありがとうございました。 |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |