Labo

EC-CUBE3 分室

【3.0.15】注文情報を削除した場合の復元方法

2018年01月13日 / 投稿者名:chiharu


今回はお客様からのお問い合わせについて備忘録として記述しておきたいと思います。
内容は EC-CUBE 2系 の時から時々お問い合わせ頂いた以下の内容です。
 「注文情報を間違って消してしまったので戻したい」
 
まぁ、失敗は誰にでもあります。
削除確認は表示されるとは云え、勢いに乗っていれば削除してしまう事もありますよね。
今回はその戻し方です。
※ ちなみに 2系 の時も同じような記事が書かれていました(笑)
 
確認してみたところ、基本的には EC-CUBE 2系と同じようですね。
受注データを削除した場合でもデータベース上にデータが残っている状態でした。
削除前の受注データとの違いは「del_flg」の扱いだけの様です。
 
管理画面いて削除処理を行うと受注情報の「del_flg」と云う項目の内容が「0」から「1」に変化します。
つまり「del_flg」が「1」になっている受注データは処理の対象にしないと云うものです。
この結果、削除した受注データはデータベースに存在していますが「削除」されている為、表示できないと云う形です。
 
さて、本題の復元方法についてですが、復元するためにはデータベースの情報を変更しないといけません。
データベースの変更に関しては間違えるとサイト自体が表示されなくなる可能性があります。
作業をする方がデータベースの操作を良く知った人でない限り、余り行わない方が良いのかもしれません。
誤解を恐れずに云えば、結果的に「業者に頼むか諦めたほうが良かった」となる可能性もあります。
作業を行う場合は自己責任で対応して下さい。
 ※データベースを理解している方はこの記事を見る必要はないんでしょうが(笑)
 
 
■復元方法
 
 復元方法としては色々な方法があります。
 今回は簡易な方法として「phpMyAdmin」や「phpPgAdmin」を使用する方法を紹介します。
 「phpMyAdmin」や「phpPgAdmin」とはデータベース管理ツールになります。
 データベース管理ツールを使用すると EC-CUBE を通さなくてもデータの改変が出来てしまいます。
 何度も言いますがデータの変更を行う際は最新の注意を払ってください。
 
 以下が手順内容です。
 
 1.
  データベース管理ツールにて対象のデータベースにログインします。
 
 2.
  「dtb_order」テーブルを開きます。
 
 3.
  「order_id」にて対象のデータを探します。
  当たり前ですが管理ツールの検索機能を使用すれば簡単に対象のデータを絞り込めます。
 
 4.
  対象データの「del_flg」が「1」と表示されていることを確認してください。
  最近の管理ツールだと対象の個所をダブルクリックなどで編集モードに入れるかと思います。
  そこで「del_flg」を「0」に変更して下さい。
   ※半角数字で入力してください。
 
 
これで作業は完了です。
EC-CUBE の管理画面にて受注データが復元されていることを確認してください。
復元されていないと何らかの操作を間違っている可能性がありますので改めて確認してください。
 
ちなみに「SQL文」にて一括で変更する方法もあります。
但し SQL文を理解している人には今更説明は不要と思います。
また、SQL文を知らない人は間違えた時が酷いことになる可能性があります。
その場合には無理に一括処理はしない方が良いのではないかと思います。
 
 
と云う形で今回は終了です。
有難う御座いました。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

* Copy This Password *

* Type Or Paste Password Here *

*

コメント欄にコードを挿入したい場合は、[php][/php] を使ってください。