qtsql: Query inserts malformed UTF-8 text to MySQL
Question
I want to connect to my MySQL database and insert some UTF8 strings. But when I do the insert
query, some text like سسسسسسسسسسسسسسسس
is inserted into my table.
This is my code:
s = QtCore.QString("insert into test4 values('' , ' شسشس')");
self.onlineQuery.exec_(s);
What's wrong with my query?
Edit:
I solved the problem with this code:
QtCore.QTextCodec.setCodecForCStrings(QtCore.QTextCodec.codecForName("UTF-8"))
QtCore.QTextCodec.setCodecForLocale ( QtCore.QTextCodec.codecForName("UTF-8"))
La solution
Make sure the connection charset is set to UTF-8. This is not always the default.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow