Neuigkeiten
  • Die modified eCommerce Shopsoftware ist kostenlos, aber nicht umsonst.
    Spenden
  • Damit wir die modified eCommerce Shopsoftware auch zukünftig kostenlos anbieten können:
    Spenden
  • Thema: Wenn products_description leer, dann Inhalt von products_name rein kopieren

    derheiko

    • Fördermitglied
    • Beiträge: 470
    • Geschlecht:
    Hallo zusammen:

    Kurzfassung:

    Gibt es eine Möglichkeit über phpMyAdmin einen SQL Befehl zu starten, welcher prüft, ob in der Tabelle
    products_description in der Spalte products_description ein Inhalt vorhanden ist und wenn nicht, den Inhalt der spalte products_name in die products_description reinkopiert.?

    Langfassung:

    Durch einen Fehler in der Schnittstelle zwischen unserer Warenwirtschaft und dem Shop wird jeder Artikel, der überarbeitet oder neu dazu kommt, ohne Artikelbeschreibung in den Shop geladen.
    Alte Artikelbeschreibungen werden bei Artikelupdates gelöscht.

    [ Für Gäste sind keine Dateianhänge sichtbar ]

    Den Fehler ist derzeit vom Hersteller nicht lösbar.  Das kann noch 2~4 Wochen dauern. Wir haben rund 330.000 Ersatzteile im Shop und müssen für rund 80.000 Artikel aktuell ein Preisupdate machen. Das würde bedeuten, alle Beschreibungen fliegen raus.

    Daher dachte ich mir, dass dies die einfachste Übergangslösung wäre, weil bei den meisten Artikel tatsächlich der Artikelname gleich mit der Beschreibung ist.

    Vielen lieben Dank vorab für die Hilfe ;)

    Gruß Heiko

    Linkback: https://www.modified-shop.org/forum/index.php?topic=42473.0

    uptrender

    • Frisch an Board
    • Beiträge: 77
    ACHTUNG:  Vorher Backup machen - ungetestet...

    update products_description set products_description = products_name where products_description = ""

    derheiko

    • Fördermitglied
    • Beiträge: 470
    • Geschlecht:
    Danke für die schnelle Antwort.
    Prüft er damit vorab, ob das Feld leer ist oder macht das dann über alle Artikel?

    uptrender

    • Frisch an Board
    • Beiträge: 77
    Sowohl als auch - die Abfrage läuft über ALLE Artikel und betrifft die, bei denen folgende Bedingung erfüllt ist, also das Feld products_description leer ist:
    where products_description = ""

    ACHTUNG: Backup vorher machen und vorher testen

    Übrigens: die fehlende products_description könnte man sich aus einem Backup auch gezielt wiederherstellen

    derheiko

    • Fördermitglied
    • Beiträge: 470
    • Geschlecht:
    Danke für die schnelle Rückmeldung.

    Probiere ich heute Abend in einer Testumgebung aus und melde mich dann.

    Zitat
    Übrigens: die fehlende products_description könnte man sich aus einem Backup auch gezielt wiederherstellen

    Die products_description ist mit 339.481 Artikel die größte Datenbank mit 527 MB.
    Die bekomme ich nicht über phpMyAdmin hochgeladen. Vielleicht noch als zip.
    Bei All-Inkl habe ich auch Shell Zugriff. Darüber ginge es evtl. noch.

    Wir haben das gestern zwar festgestellt, aber der Fehler ist 2 Wochen alt. Ich müsste also eine 2 Wochen alte products_description in die Datenbank hochladen. Was ist mit den Artikeln, die mittlerweile dazu gekommen sind? Kann man das ergänzen?

    Gruß Heiko

    uptrender

    • Frisch an Board
    • Beiträge: 77
    Falls SSH Zugang beim Server besteht kann man auch über die Shell SQL-Dateien wieder einspielen wenn Sie zu groß für Phpmyadmin sind  z. B.:
    mysql -uBENUTZER -p datenbankname < backupdatei.sql

    Über SSH kann man auch ZIP-Dateien entpacken. Oft geht das auch über die administrativen Backends am Webserver.

    Ich würde erstmal das Problem der Schnittstelle lösen und dann einen Export aller Artikel nochmals anstoßen, dann werden die Bezeichnungen ja über die WaWi nochmals überspielt und bleiben dann wieder in Sync.

    Q

    • Fördermitglied
    • Beiträge: 1.535
    ACHTUNG:  Vorher Backup machen - ungetestet...

    update products_description set products_description = products_name where products_description = ""

    Da products_description kein default '' hat, könnte sein, dass er dort auch NULL drin stehen hat und deswegen der Befehl nicht ausreicht. Ich würde es so lösen:

    Code: SQL  [Auswählen]
    UPDATE products_description
    SET products_description = products_name
    WHERE products_description = ''
       OR products_description IS NULL;
     

    Q

    • Fördermitglied
    • Beiträge: 1.535
    Danke für die schnelle Rückmeldung.

    Probiere ich heute Abend in einer Testumgebung aus und melde mich dann.

    Na hoffentlich hat dich dabei nicht der Schlag getroffen.  :panic:

    derheiko

    • Fördermitglied
    • Beiträge: 470
    • Geschlecht:
    Nabend ;)
    Nein, ich bin nur leider immer noch nicht dazu gekommen. Sorry.
    Aber ich hoffe es diese Woche zu schaffen.

    Q

    • Fördermitglied
    • Beiträge: 1.535
    Beruhigend  :cheers:
    rechtstexte für onlineshop
    11 Antworten
    4814 Aufrufe
    20. Juli 2010, 23:20:37 von Tomcraft
    1 Antworten
    1992 Aufrufe
    11. Oktober 2012, 16:02:53 von NicoDeluxe
    7 Antworten
    3958 Aufrufe
    03. Juli 2013, 23:44:57 von Marcel G.
    0 Antworten
    1547 Aufrufe
    27. Februar 2017, 14:29:48 von sowieso-max
               
    anything