SQL Befehl - Buchstaben in DB ersetzen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • SQL Befehl - Buchstaben in DB ersetzen

    Hallo,
    gibts nen mysql befehl, der die einen buchstaben gegen einen anderen ersetzt? also dass ich im befehl z.b. sage, er soll aus allen einsen zweien machen? nur so als beispiel. weil habe nen problem mit uft8. Habe nach einen Serverumzug in der DB sonderzeichen, also für ö,ä,ü und ß. bei "ü" z.b. "
    PHP-Code:
    ü 
    " und so. Die DB ist zu groß, um sie nocheinmal hochzuspielen. war zu viel arbeit. Müsste dann im Word per Ersetzen Modus diese Buchstaben ersetzen. Und eine möglichkeit, es per utf8 hochzuspielen, habe ich nicht, da der mysql server dies nicht unterstüzuz (alte Version)
    also, gibts irgendeine einfache möglichkeit?

  • #2
    Versuchs mal mit SELECT _latin1 textspalte ... oder einem anderen Characterset.
    Wenn du den richtigen gefunden hast, ändere besser gleich die Spalte, dann sparst du dir die explizite Angabe in jeder Query.

    Kommentar


    • #3
      hm habe versucht, den befehl anzuwenden. aber so gut ken ich mich nit aus. habs nit hinbekommen. will den befehl ja nur für jeden buchstaben einmal eingeben. und nicht für jede zeile.
      wenn das nicht geht, dann wäre's ja auch ok, wenn ich das pro tabelle einmal mache. nehmen wir an, für bb1_pms. dann ist die textspalte "message" oder wie?

      in der dokumentation habe ich auch mal geschaut, aber werd nit so recht schlau drauß.

      Kommentar


      • #4
        Nun in deiner Datenbank stehen eigentlich überhaupt keine Zeichen sondern nur Einsen und Nullen. Etwas anderes kann man mit einem Computer (noch) nicht verarbeiten.

        MySQL interpretiert die Einsen und Nullen entsprechend der Collation der Tabelle/Spalte.

        Nehmen wir mal an, du hast eine utf8-Tabelle. MySQL liest nun bei SELECT testspalte FROM ... die Folge "10101010" von der Festplatte und gibt "ü" aus, weil das die UTF8-Entsprechung ist.

        Mit SELECT _latin1 textspalte FROM ... erzwingst du die Interpretation der "10101010" in einem Latin1-Zeichensatz und übergehst somit die Standardeinstellung UTF8. Es könnte nun ein "ü" ausgegeben werden, muß aber nicht.

        Deshalb sagte ich, du sollst so lange probieren, bis das ausgegeben wird, was du eigentlich haben willst. Und genau den Zeichensatz, mit dem du das schaffst, machst du zum Zeichensatz der Spalte. Das geht mit einem ALTER TABLE ... oder bequem über PHPMyAdmin.

        Kommentar


        • #5
          joa ok, hab rumprobiert. nur nichts rausbekommen
          trotzdem danke für die erklärung!

          Kommentar

          Lädt...
          X