Anzeige:
Ergebnis 1 bis 15 von 22

Thema: Umlaute beim Export aus Datenbank

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Registrierter Benutzer
    Registriert seit
    29.09.2004
    Beiträge
    34

    Umlaute beim Export aus Datenbank

    Hallo!
    Ich habe eine mysql-Datenbank, die ich in Excel mittels eines ODBC-Treibers einlese. Mein Problem ist, dass die Umlaute (ö,ü,ä,ß) dabei flöten gehen, d.h. in der Datenbank sind sie korrekt dargestellt, nur in Excel erscheinen komische Zeichen.

    Hat jemand eine Idee?
    Gruß,
    mec

  2. #2
    Registrierter Benutzer
    Registriert seit
    29.09.2004
    Beiträge
    34
    Hat wirklich keiner eine Idee?

  3. #3
    Registrierter Benutzer
    Registriert seit
    28.08.2002
    Beiträge
    496
    das ganze hat etwas mit zeichensätzen zu tun.
    wenn du mit dem editor unter windows folgendes c-programm schreibst:
    Code:
    #include <stdio.h>
    
    int main()
    {
      printf("böhse\n");
      return 0;
    }
    dann wird aus dem ö meist ein anderes zeichen % oder so (habs grad nicht ausprobiert) obwohl du es doch vermeintlich richtig eingetippt hast!

    für die lösung des problems hast du 2 möglichkeiten, entweder bringst du dem excel bei mit dem richtigen encoding (zeichensatz) zu arbeiten, oder du sagst der datenbank mit welchem zeichensatz du denn speichern willst...

    greetz

  4. #4
    Registrierter Benutzer
    Registriert seit
    21.06.1999
    Beiträge
    677
    Oder du bist über den MS-Schwachsinn gestolpert, dass "Eingabeaufforderung" und Windows verschiedene Encodings verwenden. Da gibt's in der cmd.exe glaube ich einen Befehl "codepage" (oder so ähnlich) mit dem man das umsetzen muss, allerdings klappt das nur, wenn man gleichzeitig den Font ändert.

    Das ist ganz gut in der PostgreSQL (sic!) Doku im Abschnitt "Installation unter WIndows" beschrieben. Oder in irgendeiner Perl-Doku habe ich das auch mal erläutert gesehen.

  5. #5
    Registrierter Benutzer
    Registriert seit
    29.09.2004
    Beiträge
    34
    Danke für die Antworten! Ich hatt mir schon sowas gedacht, dass es mit dem Zeichensatz zu tun hat.
    Ist nur so, dass ich auf´m Mac arbeite (sorry, hatt ich vergessen, im ersten Posting zu erwähnen). Mit der Windows-Anleitung kann ich somit nicht viel anfangen.
    Wie bringe ich Excel bei mit dem richtigen encoding zu arbeiten?

  6. #6
    Registrierter Benutzer
    Registriert seit
    28.08.2002
    Beiträge
    496
    mhh gute frage....
    ich glaube es wäre einfacher der datenbank das beizubringen

    vielleicht hilft dir das hier weiter:
    http://dev.mysql.com/doc/mysql/en/Charset-national.html
    http://dev.mysql.com/doc/mysql/en/Charset-we-sets.html

    greetz

  7. #7
    Registrierter Benutzer Avatar von jeebee
    Registriert seit
    01.01.2005
    Ort
    Bern || Zürich
    Beiträge
    540
    wenn ich mich nicht täusche braucht excel iso8859-1 zeichensatz

    alle angaben ohne gewähr

  8. #8
    Registrierter Benutzer
    Registriert seit
    29.09.2004
    Beiträge
    34
    Also iso8859-1 ist ja Latin1. Ich hab´s jetzt mal mit Latin1 in mySQL sowie auch mit UTF-8 ausprobiert, leider ohne Erfolgt: in Excel erscheinen weiterhin seltsame Zeichen. Ein unlösbares Problem ???

  9. #9
    Registrierter Benutzer
    Registriert seit
    21.06.1999
    Beiträge
    677
    Um das Problem einzugrenzen, solltest Du vielleicht erstmal die Daten vom Terminal (liegt in Programme/Dienstprogramme) aus testen. Im Terminal kannst Du den Zeichensatz irgendwo einstellen (Ich glaube unter Einstellungen/Fenster oder so). Standardmäßig ist das utf8.

    Wie sehen Umlaute aus, wenn Du im Terminal mit SELECT Daten ausliest? Probiere verschiedene Encodings aus. Wenn es da irgendwie klappt, dann ist das schon mal eine gute Ausgangslage.

    Ansonsten kenne ich mich nur mit PostgreSQL aus, aber ich denke mal, dass es bei MySQL ähnlich ist: es gibt die Encoding der Daten in der Datenbank, das Client-Encoding (das die DB-Bibliothek, in deinem Fall ODBC, zurückliefert) und das Encoding dass die Applikation (in deinem Fall Excel) zur Darstellung verwendet. Bei PostgreSQL kann man die ersten beiden konfigurieren, für die dritte ist Excel zuständig. Insgesamt gibt es also mehrere Stellen, an denen was schiefgehen kann.

  10. #10
    Registrierter Benutzer
    Registriert seit
    29.09.2004
    Beiträge
    34
    Ich habe im Terminal schon nachgeschaut. Wenn ich die Daten mit select auslese, werden sie alle richtig dargestellt. Nur wenn ich dann über ODBC (My ODBC 3.51) die Daten in Excel 2004 übertrage, erscheinen keine Umlaute mehr, sondern sowas wie ? ‰ ¸

  11. #11
    Registrierter Benutzer
    Registriert seit
    21.06.1999
    Beiträge
    677
    Zitat Zitat von mec
    Ich habe im Terminal schon nachgeschaut. Wenn ich die Daten mit select auslese, werden sie alle richtig dargestellt. Nur wenn ich dann über ODBC (My ODBC 3.51) die Daten in Excel 2004 übertrage, erscheinen keine Umlaute mehr, sondern sowas wie ? ‰ ¸
    Dann guck doch mal in den Terminal-Einstellungen nach, welches Encoding Du eingestellt hast. Und gucke in der MySQL Doku mal nach, wie das Server-Encoding und das Client-Encoding abgefragt und eingestellt werden. So was wie diese Doku hier gibt es bestimmt auch für MySQL:
    http://www.de.postgresql.org/docs/7....multibyte.html
    Da steht auch ein interessanter Hinweis auf Optionen im ODBC-Treiber.

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •