Qt 中存資料到資料庫時存在中文亂碼問題

2021-08-20 23:27:10 字數 588 閱讀 3789

此方法修改後可以在qt中正常顯示中文,也可以通過qt往mysql中插入中文並在qt的控制項上顯示出來。   但通過命令列檢視表的內容時,中文直接顯示為?。 所以這個辦法做了之後就不能在命令列下檢視mysql中文內容。

一般這種問題主要是資料庫的字符集和qt 的字符集存在不一致的問題。

在mysql的配置檔案中

這裡的字符集編碼是utf8

所以在qt中我們要將插入的資料變成utf8

如果資料庫編碼是其他型別,則qt中也要進行相應的配置,

一般配置如下:

就是在開啟資料庫前加入

qtextcodec

*codec=

qtextcodec::codecforname("utf-8");

qtextcodec::setcodecforlocale(codec);

insert時判斷資料庫中是否存在

在做使用者模組或其他模組要求資料庫唯一性的時候在插入資料需要先判斷一下資料庫中是否已經存在 直接看案例 這條sql 最基礎的插入語句,insert into user name,password values admin,123456 下面將它改造成插入判斷是否存在 insert into user...

把Excel中的資料插入到資料庫中已經存在的表中

首先,建立乙個表 sql view plain copy print?create table aaa name varchar 10 user id varchar 20 create table aaa name varchar 10 user id varchar 20 然後插入數值 注意要轉...

QT連線Sqlite資料庫,中文路徑出錯

qt對中文的支援是乙個很讓人頭疼的問題,前些天修改了乙個連線sqlite資料庫,資料庫中文路徑出錯,現在把怎麼解決的做一些記錄。我用的是vs2010,首先確定自己用的是multi byte還是unicode編碼,這兩種編碼直接決定呼叫windows的api的時候用的是a版還是mb版,這裡以下面這段 ...