mySQL: Zeichensätze und Kollationen

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

  • mySQL: Zeichensätze und Kollationen

    Hallo Leutz,
    jetzt bin ich echt am Ende. Hab mich lang mit dem Thema beschäftigt, gesucht, gelesen, ausprobiert aber ich blick nicht druch. Seid so nett, laßt mich net dumm sterben ;-)
    Ich arbeite mit phpmyadmin, dort kann ich mir die Systemvariablen anzeigen lassen. Schon allein das erschlägt mich, es gibt hier 7 Werte für einen Character-Set und 3 Werte für Kollationen und das ganze noch in zwei Spalten: "Wert für diese Sitzung" und "Globaler Wert" (was ist da der Unterschied?). Überall steht ein Wirrwarr von latin1 und uft8 drin, ich blick´s net. Was ich EIGENTLICH nur möchte ist, dass der Server (4.1.13-nt) auf latin1 und german_1 steht. So dass ich exportieren kann, den im Moment kommt immer UFT8 beim exportieren raus. Ich dreh noch durch. in meiner my.ini steht schon default-character-set: latin1 und server-collation: germain1_ci

    ich hätt 1000 Fragen, auf die ich in der mysql-Doku keinen Antworten finde.

    Erschlagt mich mit Wissen...

    Gruß
    Michael

  • #2
    in PMA auf der Übersicht bei "Zeichensatz / Kollation der MySQL-Verbindung:" halt einfach latin auswählen (du willst doch mit pma exportieren?)

    Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

    bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
    Wie man Fragen richtig stellt

    Kommentar


    • #3
      Hallo,

      danke für die Antwort. Das hab ich jetzt mal gemacht, das Ergebnis ist aber das gleiche. Die Sonderzeichen sind UTF8 in der exportierten CSV.

      Ich möchte das auch mal verstehen, was die Unterschiede zwischen diesen ganzen Zeichensätzen sind, wann die greifen, wo ich die (my.ini) richtig einstelle und vor allem, was bedeutet 'Wert für diese Sitzung' und 'Globaler Wert'. Versteh ich nicht, was da der Unterschied ist. Wie krieg ich das komische swedish raus (ist immer ein Problem beim Sortieren). Viele Fragen...

      Variable Wert für diese Sitzung Globaler Wert
      character set client utf8 latin1
      character set connection latin1 latin1
      character set database latin1 latin1
      character set results utf8 latin1
      character set server latin1 latin1
      character set system utf8 utf8
      character sets dir D:\mysql\share\charsets/ D:\mysql\share\charsets/
      collation connection latin1_german1_ci latin1_swedish_ci
      collation database latin1_german1_ci latin1_swedish_ci
      collation server latin1_swedish_ci latin1_swedish_ci


      Gruß
      Michael

      Kommentar


      • #4
        Guck doch einfach ins Manual diesbezüglich, da steht doch alles drin ^^,

        Generell ist es doch kein Problem die Daten als utf8 zu exportieren, ich weiß gar nicht ob mysql noch anders kann... die Frage sollte eher sein, was für ein Problem hast du damit, dass er als UTF8 exportiert?

        Wegen dem Schwedisch, guck ins Manual, da steht irgendwo wie man das ändern kann, weiß ich auch nicht auswendig xP

        Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

        bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
        Wie man Fragen richtig stellt

        Kommentar


        • #5
          Hallo,

          ich hab mich sehr lange mit dem Manual beschäftigt!! Erst danach hier gepostet. Im Manual gibt es viele Variablen, die ich in der my.ini gesetzt habe. Manche (obwohl ab 4.1.1 eingeführt) gibt´s nicht (z. B. collation_set_results) und der Server startet nicht. die anderen zeigen für mich keine Wirkung. Exportieren in UTF8 ist schon ein Problem, denn es sind dann alle Sonderzeichen zerschossen (im Excel). Nach den Collationen hab ich auch im Manual gesucht:
          collation_server=latin1_german1_ci

          ...zeigt keine Wirkung. Auch 'Globaler Wert' oder 'Wert der Sitzung' ist im Manual nie erwähnt. (oder ich find die Stelle nicht, dann aber gut versteckt...)
          Ich muß eben desöfteren für Kunden Datenbanken im CSV-Format liefern. Wie mach ich das am besten?


          Gruß
          Michael

          Kommentar


          • #6
            Original geschrieben von Lengen1971
            Ich muß eben desöfteren für Kunden Datenbanken im CSV-Format liefern. Wie mach ich das am besten?
            Ein Skript was die CVS-Datei erstellt und ganz am Anfang nach dem DB-Connect setzt du einmal einen Query "SET NAMES"-Query für Latin/iso-Zeichensatz ab, siehe http://dev.mysql.com/doc/refman/5.1/en/set-option.html etc. etc.

            Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

            bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
            Wie man Fragen richtig stellt

            Kommentar


            • #7
              Hallo,
              ok, hab ich gesehen, danke. Aber die Stelle in phpMyAdmin find ich nie, wo ich das hinschreiben muss. So´s Crack bin ich nicht. kann man den phpMyAdmin nicht einfach irgendwo sagen, dass er bitte bitte bitte in latin1 arbeitet?

              Gruß
              Michael

              Kommentar


              • #8
                Original geschrieben von Lengen1971
                Hallo,
                ok, hab ich gesehen, danke. Aber die Stelle in phpMyAdmin find ich nie, wo ich das hinschreiben muss. So´s Crack bin ich nicht. kann man den phpMyAdmin nicht einfach irgendwo sagen, dass er bitte bitte bitte in latin1 arbeitet?

                Gruß
                Michael
                weiß nicht ... ist eh bugware das Ding, kannst dich ja mal an deren Forum wenden...

                Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

                bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
                Wie man Fragen richtig stellt

                Kommentar

                Lädt...
                X