Zeige Artikel 1 bis 3
Displaying posts with tag: character set (reset)
FAQ: Mein mysqldump zerstört meine Umlaute

In den letzten Tagen habe ich das mehrmals erklären müssen, daher jetzt einmal im Blog, damit ich das verlinken kann. Dieser Artikel ist, anders als der Rest des Blogs, CC-BY-SA.

Der Fragesteller:

Ich habe Daten in meiner Datenbank, die ich erfolgreich mit meiner Anwendung einlesen und wieder auslesen kann. Wenn ich jedoch einen mysqldump mache, um die Daten auf ein neues System zu portieren, bekomme ich zerstörte Umlaute.

Das Problem tritt auf, wenn man Daten in der Datenbank mit dem falschen Zeichensatz-Label speichert.

In MySQL klebt an jedem String ein Label, der den Zeichensatz angibt, in dem der String geschrieben worden ist. Der String _latin1"Köhntopp" ist also hoffentlich die Zeichenfolge "K-0xF6-hntopp", und der String _utf8"Köhntopp" entsprechend die Zeichenfolge "K-0xC3 0xB6-hntopp". Probleme treten auf, wenn das …

[Mehr]
MySQL: Zeichensatz-Grundlagen

Markus fragt: QUOTE:Durch ... wechseln wir gerade unseren Root-Server. Dort habe ich bereits das Gentoo-Basissystem am fluppen. Bei der Umstellung möchte ich gleich von MySQL 4 auf 5 wechseln.

Dabei stellt sich die Frage, ob ich das System nicht gleich von latin1 auf utf-8 umstellen soll. Sollte ich lieber bei latin1 bleiben und alles so migrieren oder doch den großen Wurf zu utf-8 wagen? Die Frage habe ich ihm schon beantwortet, aber versprochen, das Thema noch einmal im Blog "in groß" durchzudeklinieren. Hier also der Zeichensatz-Artikel redone.

Zeichensatztheorie

Zusammenhänge zwischen den Begriffen. Ein Zeichensatz ("CHARACTER SET") ist eigentlich ein Symbolvorrat, also eine Liste von Symbolen, die in einer bestimmten Sammlung enthalten sind. Ein Zeichensatz ist damit ein ganz und gar abstraktes …

[Mehr]
Zeichensatzärger

Choose any font you like
Seit MySQL 4.1 existiert in MySQL Support für Zeichensätze und Sortierreihenfolgen. Das bedeutet im Wesentlichen, daß an jedem CHAR, VARCHAR und TEXT in der Datenbank und an jeder Stringkonstante dranklebt, in welcher Codierung der String vorliegt und mit welcher Sortierreihenfolge der String beim Sortieren und Vergleichen zu behandeln ist.

Vokabeln

Aber zuerst einmal ein bischen Vokabular:

Ein Zeichensatz ist eine Sammlung von Symbolen, die verwendet werden dürfen. Zeichen in einem Zeichensatz haben Namen wie "Copyright Symbol" oder "Lowercase O-Umlaut".

Eine Codierung ist eine Definition, in welcher Bytefolge ein Symbol zu codieren ist. In Latin1-Codierung zum Beispiel ist ein Lowercase O-Umlaut Symbol als 0xF6 codiert, während es in …

[Mehr]
Zeige Artikel 1 bis 3