qtsql: Die Abfrage fügt fehlerhaften UTF-8-Text in MySQL ein
Frage
Ich möchte eine Verbindung zu meiner MySQL-Datenbank herstellen und einige UTF8-Zeichenfolgen einfügen.Wenn ich jedoch die insert
-Abfrage durchführe, wird Text wie سسسسسسسسسسسسسسسس
in meine Tabelle eingefügt.
Dies ist mein Code:
s = QtCore.QString("insert into test4 values('' , ' شسشس')");
self.onlineQuery.exec_(s);
Was stimmt nicht mit meiner Anfrage?
Bearbeiten:
Ich habe das Problem mit diesem Code gelöst:
QtCore.QTextCodec.setCodecForCStrings(QtCore.QTextCodec.codecForName("UTF-8"))
QtCore.QTextCodec.setCodecForLocale ( QtCore.QTextCodec.codecForName("UTF-8"))
Lösung
Stellen Sie sicher, dass der Verbindungszeichensatz auf UTF-8 eingestellt ist.Dies ist nicht immer die Standardeinstellung.
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow