質問 > 管理機能 > [2.11.1]商品が二重に登録されてしまった場合の対処について |
管理機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
sako1982 |
投稿日時: 2012/7/31 13:59
対応状況: −−−
|
新米 登録日: 2012/7/31 居住地: 千葉 投稿: 7 |
[2.11.1]商品が二重に登録されてしまった場合の対処について いつもお世話になっております。
商品登録CSVによる一括登録にて、CSVの形式に商品規格IDを含めて いなかったため、 以下の問題により商品が二重に登録されてしまいました。 【商品登録CSV】CSVの形式によって、既存商品の更新時に商品規格が複数登録されてしまう http://svn.ec-cube.net/open_trac/ticket/1570 いきなり実環境で試してしまったのが悪かったのですが、このような場合は 商品IDと規格名称等を基に手動で削除していくしかないのでしょうか。 EC-CUBE 2.11.1 PHP 5.1.6 MySQL 5.1.36 ※PHPAdmin環境あり。 本現象により崩れたDBの対処を行った方がいらっしゃいましたら、 アドバイスを頂けましたら幸でです。 何卒宜しくお願いいたします。 |
seasoft |
投稿日時: 2012/7/31 14:53
対応状況: −−−
|
神 登録日: 2008/6/4 居住地: 投稿: 7367 |
Re: [2.11.1]商品が二重に登録されてしまった場合の対処について その商品IDが商品マスタ以外で利用されていないという前提でしたら、SQL の DELETE 文で削除する道も有効だと思います。
その方がパフォーマンスへの影響も少ない (逆に言えば、改善が大きい) と思います。ただし、誤った WHERE 条件を記述すると、データ状態に致命的な影響を与える懸念もありますのでご留意ください。 なお、異常データを投入した直後でしたら、create_date をベースとした削除も可能だと思います。(product_id でも、通常連続していると思いますので、大した違いはないと思いますが。)
|
sako1982 |
投稿日時: 2012/8/1 0:00
対応状況: −−−
|
新米 登録日: 2012/7/31 居住地: 千葉 投稿: 7 |
Re: [2.11.1]商品が二重に登録されてしまった場合の対処について seasoft 様
早速のご回答ありがとうございました。 > なお、異常データを投入した直後でしたら、create_date をベースとした削除も可能だと思います。 > (product_id でも、通常連続していると思いますので、大した違いはないと思いますが。) 上記、アドバイスありがとうございます。 DELETE 文で削除するとリスクは高いが改善効果が高いとの旨、了解いたしました。 確認いたしましたところ、"product_id" は同一のものが利用されており、増殖したのは "product_class_id" のみのようでしたので、 "dtb_products_class" の "create_date" で該当のCVSを登録した日時をLIKE条件で絞込み DELETE 文による削除を実施する方針で無事に成功しました。 ご教授ありがとうございました。 |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |