4 Stimmen

MySql UTF-Kodierung

 java.sql.SQLException: Falscher String-Wert: '\\xAC\\xED\\x00\\x05sr...' für Spalte 'xxxx'

Die Spalte ist ein Longtext in MYSQL mit UTF8-Zeichensatz und utf8_general_ci-Kollation.

Was ist falsch?

7voto

Jakub Bochenski Punkte 2933

Es ist etwas spät, aber vielleicht möchtest du wissen, dass \xAC\xED\x00\x05sr... eine magische Zahl für die Java-Serialisierung ist. Anscheinend wird dein Parameter serialisiert anstatt als Zeichenkette übergeben zu werden.

2voto

Mark Byers Punkte 761508

Unter der Annahme, dass es sich um hexadezimale Escape-Codes handelt, ist der Text \xAC\xED\x00\x05sr... keine gültige UTF-8-Zeichenkette.

1voto

Nathan Mall Punkte 11

Ist dies bei der Verwendung von PreparedStatements in Groovy der Fall? Wenn ja, verwenden Sie GStrings anstelle von einfachen Java-Strings. Überprüfen Sie Ihr Objekt, um sicherzustellen, dass Ihre Parameter das sind, was Sie erwarten.

0voto

user666923 Punkte 87

Ändern Sie Ihre Tabelle auf die latein1-Codierung oder utf8mb4

0voto

ALTER TABLE deine_tabelle CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;

Du kannst dies versuchen.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X