Thread Perl DBI und mysql_enable_utf8 (0 answers)
Opened by rosti at 2019-09-24 12:11

rosti
 2019-09-24 12:11
#190548 #190548
User since
2011-03-19
3193 Artikel
BenutzerIn
[Homepage]
user image
Aus gegebenem Anlass habe ich zum Thema einen kleinen Artikel geschrieben:

https://rolfrost.de/dbiutf8.html

Viel Spaß damit.

MFG

PS: Wa das UTF-8-Problem hier im Forum betrifft habe ich ergänzt:

Problem mit UTF8 und Zeichen mit mehr als 3 Bytes

Beim Versuch, mit o.g. Code das Zeichen $m->insert($dbh, 'kette', zeichen => pack "U", 0x1F440); einzufügen erscheint eine Fehlermledung: DBD::mysql::db do failed: Incorrect string value: '\xF0\x9F\x91\x80' for column 'zeichen' at... Das liegt daran daß MySQL in Sachen UTF-8 weiterhin unterscheidet ob er Anzahl an Bytes welche utf8kodierte Zeichen mit sich bringen. Aus jeden Fall iet es unsinnig, vor einem INSERT set names utf8 collate utf8_general_ci anzuweisen. Wie MySQL mit utf8kodierten Zeichen umgeht die mehr als 3 Bytes haben, siehe Dokumentation.

Bei einem INSERT ist Bytesemantic angebracht.

.
Last edited: 2019-09-26 09:21:24 +0200 (CEST)

View full thread Perl DBI und mysql_enable_utf8