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: Einen Begriff global per Datenbank ändern?

    Da Sandro

    • Fördermitglied
    • Beiträge: 832
    • Geschlecht:
    Einen Begriff global per Datenbank ändern?
    am: 15. November 2012, 17:00:57
    Hallo zusammen,

    ich muss einen bestimmten Begriff innerhalb des GESAMTEN Shops in einen anderen ändern.
    Das kann man ja sicherlich per Datenbank ganz einfach machen oder?

    Es müsste also z.b. ABC in XYZ geändert werden, und zwar unabhängig davon ob es sich dabei um den Text handelt oder z.B. auch um eine Email-Adresse (@ABC.de wird zu XYZ.de).

    Wie macht man denn sowas?

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

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.990
    • Geschlecht:
    Re: Einen Begriff global per Datenbank ändern?
    Antwort #1 am: 15. November 2012, 21:24:51
    Da müsstest du schon genazer sagen was du machen möchtest.
    Text ändern, okay. Wo wird dieser "Text" denn im Front-/Back-end zu sehen sein ?

    Gruß,
    noRiddle

    Alfred

    • Experte
    • Beiträge: 2.115
    Re: Einen Begriff global per Datenbank ändern?
    Antwort #2 am: 16. November 2012, 06:16:27

    Da Sandro

    • Fördermitglied
    • Beiträge: 832
    • Geschlecht:
    Re: Einen Begriff global per Datenbank ändern?
    Antwort #3 am: 16. November 2012, 08:00:20
    Ich möchte alle Texte (Kategorie- und Artikelbeschreibungen) im Frontend ändern, sowie alle Email-Adressen, die da irgendwo versteckt sind und auch interne Verlinkungen (so wie Alfred in dem Link zeigte).

    Grund: ich musste die Domain sowie den Namen der Firma ändern. also von ABC zu XYZ.

    Und jetzt bräucht ich da halt den DB-Befehl um das auszuführen...

    Ich habs nun so probiert:
    Code: PHP  [Auswählen]
    UPDATE `categories_description` SET `categories_description` = replace(`categories_description`, ''ABC', 'XYZ')

    Es wurden 68 Datensätze geändert. Allerdings finde ich trotzdem noch 116 mal www.abc.de/... in der categories_description (es sollten daraus www.xyz.de/... werden).

    franky_n

    • Experte
    • Beiträge: 4.950
    Re: Einen Begriff global per Datenbank ändern?
    Antwort #4 am: 16. November 2012, 08:17:23
    Hallo Descreator,

    ein anderer Weg wäre:
    Export der Datenbank in eine sql Datei.
    Per Editor die Begriffe ersetzen.
    Import der sql Datei in Datenbank.

    Viele Grüße

    Franky

    Da Sandro

    • Fördermitglied
    • Beiträge: 832
    • Geschlecht:
    Re: Einen Begriff global per Datenbank ändern?
    Antwort #5 am: 16. November 2012, 08:32:41
    Hi Franky,

    die Idee ist perfekt, dadurch hab ich doch glatt mal über 400 Daten ersetzt :)
    Nur bekomme ich beim Import den Fehler:

    Zitat
    #1062 - Duplicate entry '1-2' for key 'PRIMARY'

    Ich kann mich dran erinnern, dass ich am Anfang der sql-Datei einen Befehl angeben muss, damit der die vorhandenen Dateien überschreibt, kann das sein?

    franky_n

    • Experte
    • Beiträge: 4.950
    Re: Einen Begriff global per Datenbank ändern?
    Antwort #6 am: 16. November 2012, 08:36:27
    Hi desecrator,

    Wenn Du exportierst und wieder importierst musst Du vor dem Importieren die DB löschen ansonsten kann er die Datensätze ja nicht neu erstellen. Die sind ja schon da...

    Wichtig ist das Du Dir sicher bist das Du nicht den ganzen Shop schießt und Dir das auch zutraust...

    Falls nicht, dann mach eine 2te DB die Du parallel laufen lässt und in der config Datei änderst Du mal nur zum Testen auf die 2te DB um...

    Das wäre zumindest die sicherere Variante...

    Apropos sichere Variante: Immer vorher Sicherheitskopie irgendwo ablegen! :)

    Viele Grüße

    Franky

    Da Sandro

    • Fördermitglied
    • Beiträge: 832
    • Geschlecht:
    Re: Einen Begriff global per Datenbank ändern?
    Antwort #7 am: 16. November 2012, 08:43:29
    hab ich jetzt mal gemacht (truncate), allerdings meckert er dann mit folgendem:
    Zitat
    #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '(`categories_id`, `language_id`, `categories_name`, `categories_heading_title`, ' at line 5

    liegts dran, dass ich nur truncate und nicht gelöscht habe?

    ging ;)

    Danköööööööööö!!!

    Jetzt muss ich mir halt überlegen, in welchen Tabellen noch überall ABC vorkommen könnte...

    franky_n

    • Experte
    • Beiträge: 4.950
    Re: Einen Begriff global per Datenbank ändern?
    Antwort #8 am: 16. November 2012, 08:47:39
    Hi desecrator,

    ja, truncate ist nur tabelleninhalt löschen.
    Da in dem sql auch die Tabellen neu erstellt werden müssen auch keine Tabellen vorhanden sein.

    Viele Grüße

    Franky
    4 Antworten
    2660 Aufrufe
    28. Februar 2009, 03:43:35 von vsell
    20 Antworten
    8293 Aufrufe
    28. November 2012, 10:29:59 von DokuMan
    0 Antworten
    1795 Aufrufe
    19. Februar 2013, 15:33:22 von blue sky
               
    anything