mysql的客戶端是在dos介面上,然而dos介面預設的字符集編碼方式是:gbk
(1).mysql字元轉換原理圖
(2).檢視伺服器的所有編碼方式:
(3).通過以上**,如果不想出現中文亂碼情況,需要指定客戶端的編碼方式、聯結器的編碼方式、返回資料的編碼方式;
#設定客戶端為gbk:
>set character_set_client=gbk;
#設定聯結器使用utf8
>set character_set_connection=utf8;
#如果有返回值,設定返回值的以gbk的編碼方式:
>set character_set_results=gbk;
注意:這些僅僅限制於當前的dos黑屏介面,重啟後又恢復原樣了。如果想徹底改變,則進入mysql安裝檔案中,修改my.ini配置檔案,找到client 中的:default_character_set=gbk;
(只修改客戶端就行了)
(4)用set names gbk;(可以一次性的將這三種設定相同的格式)
(5)總結:理解上面的原理圖後,因此解決亂碼問題二種方案:
1>在當前mysql客戶端修改輸入和輸出的mysql環境變數為gbk或gb2312(當前有效)
2>修改mysql目錄下的my.ini檔案,將客戶端的預設編碼方式改為gbk或gb2312,注意,需要重新啟動mysql服務
mysql 中文亂碼問題
表現一 插入中文的時候顯示data too long 二 插入成功後,search出來的結果顯示亂碼.解決方法如下 1 只要是gb2312,gbk,utf8等支援多位元組編碼的字符集都可以儲存漢字,當然,gb2312中的漢字數量遠少於gbk,而gb2312,gbk等都可在utf8下編碼 2 用命令s...
mysql中文亂碼問題
環境 windows xp mysql notepad mysql語言設定沒有問題,因為直接使用insert語句往表中插入資料沒有問題,但把insert寫入到檔案中,通過source sql的形式插入,就會出現中文亂碼。這時候使用linux環境編寫.sql檔案,在拿到windows環境執行,沒有問題...
MySql中文亂碼問題
亂碼問題是經常遇到的問題,也是比較頭疼的問題,網上資料也非常多,最近在專案實施時也出現過這個問題,在此記錄下解決方式。先描述下我遇到的問題,開發環境為eclipse,編碼格式為utf 8,web伺服器為tomcat,編碼格式為utf 8,資料庫採用mysql,編碼格式如下 資料庫中表與字段的編碼全部...