Tom: mysql INSERT Problem

Beitrag lesen

Hello,

Eine Kodierung könnte meiner Meinung nach nur dann schuld sein, wenn die Verbindung eine einbytige erwartet aber eine mehrbytige bekommt und die Feldlänge zu knapp bemessen ist. Das fällt einem bei UTF-8-Kodierung aber erst bei Umlauten und dergleichen auf die Füße.

Ich kann mich jetzt leider auch nicht mehr erinnern, in welchem Zusammenhang der andere Thread stand, in dem auch immer Texte abgeschnitten wurden, aber ich meine, Gunnar und Du habt den Fehler gefunden und erklärt.

Jetzt wo du das sagst, erinnere ich mich wieder. Wenn UTF-8 vereinbart ist (oder von MySQL als Default erwartet wird), aber bei Bytes größer als 0x7f keine korrekte UTF-8-Sequenz gesendet wird, wird an diesem Byte abgeschnitten. Eine Fehlermeldung kommt keine, aber eine Warnung wird erzeugt, die man sich mit SHOW WARNINGS ausgeben lassen muss: "Incorrect string value ..."

Mit einer nachvollziehbaren Problembeschreibung könnte man jedenfalls genauer vermuten, was es nun sein könnte.

Klar. Aber wer kommt auf sowas, um dann überhaupt einen beschreibbaren Fehler benennen zu können?
Auf den ersten Blick merkt man ja eigentlich nur: der Text ist manchmal verstümmelt.

An welcher Stelle der Übertragungskette der eigentliche Kodierungs(wechsel)fehler jetzt sitzt, weiß man dann meistens auch nicht sofort. Das ist eine ganz schön mühselige Untersuchung :-O

Liebe Grüße aus dem schönen Oberharz

Tom vom Berg

--
 ☻_
/▌
/ \ Nur selber lernen macht schlau
http://bergpost.annerschbarrich.de