91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

c語言連接mysql中文亂碼怎么辦

發布時間:2020-06-30 13:42:44 來源:億速云 閱讀:264 作者:清晨 欄目:編程語言

這篇文章主要介紹c語言連接mysql中文亂碼怎么辦,文中示例介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

1. 先上圖一張,看看什么是亂碼

c語言連接mysql中文亂碼怎么辦

2. 理解一下VC++中的字符串編碼

在以前VC++6.0中默認的字符集是多字節字符集(MBCS:Multi-Byte Character Set),而VS2005及以后默認的字符集是Unicode,這樣導致以前在VC6.0中非常簡單實用的各類字符操作和函數在VS2010環境下運行時會報各種各樣的錯誤。

字符集可以通過項目屬性修改:項目屬性→配置屬性→常規→字符集。我的字符集(VS2013編碼環境)為:

c語言連接mysql中文亂碼怎么辦

注:CString在Unicode和多字節字符集下的區別:

CString 是基于 TCHAR 數據類型的。如果為程序的生成定義了符號 _UNICODE,則會將 TCHAR 定義為 wchar_t 類型(一個 16 位的字符編碼類型);否則,會將它定義為 char(普通的 8 位字符編碼)。于是,在 Unicode 下,CString 由 16 位字符組成。如果沒有 Unicode,它們則由 char 類型的字符組成。

3. 解決辦法

在C程序里向數據庫插入數據之前,應該加上這一句:

char * query = "set names \'GBK\'";
mysql_query(con, query);

c語言連接mysql中文亂碼怎么辦

4. 為什么會出現亂碼?

在控制臺登錄mysql后輸入查詢語句:

Show variables like 'character%';

c語言連接mysql中文亂碼怎么辦

character_set_client:客戶端的字符集

character_set_results:結果字符集

character_set_connection: 連接字符集

這三個系統參數的作用:

信息輸入路徑: client→connection→server

信息輸出路徑: server→connection→results

故這幾個系統參數的值須相同,不然以不同的編碼方式傳送數據,若編碼方式不兼容,則容易造成亂碼的問題。

以上是c語言連接mysql中文亂碼怎么辦的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

财经| 福安市| 柏乡县| 兰西县| 集安市| 余庆县| 嵊州市| 佛冈县| 乌苏市| 颍上县| 公安县| 湄潭县| 常德市| 德昌县| 勐海县| 邢台县| 新巴尔虎右旗| 黔江区| 布尔津县| 左云县| 达拉特旗| 五常市| 子洲县| 六盘水市| 平塘县| 哈尔滨市| 垣曲县| 嵩明县| 沾化县| 屯留县| 应城市| 绥化市| 虞城县| 白银市| 海阳市| 平凉市| 萝北县| 漳州市| 松潘县| 吉木乃县| 克什克腾旗|