it-swarm.com.de

Unterschiede zwischen utf8 und latin1

was ist der Unterschied zwischen utf8 und latin1?

114
binbash

TF-8 ist auf die Weltherrschaft vorbereitet, Latin1 nicht.

Wenn Sie versuchen, nicht-lateinische Zeichen wie Chinesisch, Japanisch, Hebräisch, Russisch usw. mit Latin1-Codierung zu speichern, erhalten Sie mojibake . Möglicherweise finden Sie den Einführungstext von dieser Artikel nützlich (und noch mehr, wenn Sie etwas Java kennen).

Beachten Sie, dass die vollständige 4-Byte-UTF-8-Unterstützung nur in MySQL 5.5 eingeführt wurde. Vor dieser Version sind nur 3 Bytes pro Zeichen zulässig, nicht 4 Bytes pro Zeichen. Das heißt, es wird nur die Ebene BMP und nicht zB die Emoji-Ebene unterstützt. Wenn Sie vollständige 4-Byte-UTF-8-Unterstützung wünschen, aktualisieren Sie MySQL auf mindestens 5.5 oder greifen Sie auf ein anderes RDBMS wie PostgreSQL zu. In MySQL 5.5+ heißt es utf8mb4 .

140
BalusC

In latin1 ist jedes Zeichen genau ein Byte lang. In utf8 kann ein Zeichen aus mehr als einem Byte bestehen. Folglich hat utf8 mehr Zeichen als latin1 (und die Zeichen, die sie gemeinsam haben, werden nicht unbedingt durch dasselbe Byte/dieselbe Bytefolge dargestellt).

40
sepp2k