使用Navicat存儲中文數(shù)據(jù)出現(xiàn)亂碼或者空白的問題,。經(jīng)過一番折騰終于得到解決,。 表my_chat設(shè)計如下:
在數(shù)據(jù)庫chatroom上右擊打開console控制臺,輸入SHOW VARIABLES LIKE '%character_%'; 可以看到MySQL 相關(guān)編碼的設(shè)置,,全部修改為utf8后如下:
若編碼不統(tǒng)一可以參照這篇文章修改:MySQL 編碼設(shè)置http://eagletff.blog.163.com/blog/static/116350928201171543523558 1,、編輯MySQL 的配置文件
開始的時候是author與emotion字段中文亂碼:
按上述方法,我在自己的my.ini中只找到了[client]和[mysql]兩項,,按上述方法修改后,,保存的時候提示含有unicode字符,于是我另存,,替換,,但是 在重新啟動MySQL 服務(wù)的時候一直失敗。 最終發(fā)現(xiàn)該配置文件重新改回ANSI編碼后,,再加入上述修改,,可正常啟動MySQL 。 新的問題出現(xiàn):字符類型為varchar的字段中文顯示為空白(author和emotion字段),,
此法不奏效,。 網(wǎng)上找到的第二種方法:Navicat for MySQL 顯示中文亂碼解決辦法
最近遇到一個問題,用Navicat for MySQL 打開數(shù)據(jù)庫時全都顯示的是亂碼(在用程序代碼插入數(shù)據(jù)之前確保字符不是亂碼),,遇到問題就的尋求解決之道,,百度了好長時間也沒解決,網(wǎng)上那些解決辦法都不適合我的問題,,網(wǎng)上的大多數(shù)解決方法是在navicat里右擊一個連接,,選擇連接屬性,切換到高級選項卡,,去掉“使用MySQL 字符集”前的對勾,,在編碼里選擇utf-8,這種方法對于部分問題可能適合,,但是我的亂碼問題依然存在,,于是乎我又將utf-8改稱gbk,gb2312,,全都過問題依然粹依舊。 上述方法后半部分跟第一種方法一樣,,他這里解決了,,但是我沒能實現(xiàn)。 反而是利用紅色部分的方法找到了解決辦法,。 在navicat里右擊一個連接,,選擇連接屬性,切換到高級選項卡,,去掉“使用MySQL 字符集”前的對勾,,在編碼里選擇Default 我在編碼里選擇utf8之后,
查看表時,,又出現(xiàn)了空白
最終解決辦法是,,在最后編碼的地方不是選擇utf8而是Default。熟悉的中文就回來了,!
總結(jié):一般的解決辦法兩種: 1,、修改MySQL 的配置文件在相對應(yīng)的位置添加如下代碼 重啟服務(wù)。 但是可能導(dǎo)致無法重啟,,可以把配置文件編碼修改為ANSI試試,。 2、
在navicat里右擊一個連接,,選擇連接屬性,,切換到高級選項卡,去掉“使用MySQL 字符集”前的對勾,,在編碼里選擇Default 也有人編碼的地方可能是“Current Windows Codepage”,,此法不修改my.ini。
注:
要保證不亂碼,,就必須將三個編碼統(tǒng)一:一是網(wǎng)頁自身的編碼,,二是HTML里指定的編碼,三是PHP告訴Mysql的編碼(包括character_set_client和character_set_results),。
最后貼幾個比較有參考意義的文章:
MySQL 編碼設(shè)置 http://eagletff.blog.163.com/blog/static/116350928201171543523558
Navicat for MySQL 顯示中文亂碼解決辦法http://blog.163.com/chenyao_2000/blog/static/1280109302011431476629/
MySQL 中文亂碼解決 http://jingyan.baidu.com/article/e4d08ffdd9bd630fd2f60de6.html
MySQL插入中文顯示不了的問題 http://hi.baidu.com/yulewujixian/item/8a2e80ec9be075b52f140b23 PHP和MySQL的編碼問題 http://blog.csdn.net/martinkro/article/details/5352474
中文常用編碼方式(GBK,GB2312,,Unicode) http://blog.sina.com.cn/s/blog_5ac88b350100c2bx.html
UNICODE,GBK,UTF-8區(qū)別 http://www.cnblogs.com/cy163/archive/2007/05/31/766886.html |
|