最近在制作一個安裝包,需要安裝的時候執行mysql腳本兒,做了一個批處理,但是發現總是執行到 插入中文的時候報錯,或者插入中文是亂碼。
網上查了好多資料,說是把編碼改成GBK什么的,終究還是不成功。
最后經過多次測試,現把解決方案分享給大家。
第一步:打開mysql中的配置文件,my.ini,看一看配置文件中
[mysql]
default-character-set=utf8
[mysqld]
character-set-server=utf8
看是不是這樣配置的。因為utf8 是國際通用的,網上說改成gbk什么的,是不對的,因為很多國外瀏覽器,都支持utf8,但是換成gbk即使插入數據庫,中文不是亂碼,
是正常的,當你用某些主流瀏覽器時,讀出來顯示的也是亂碼。所以建議配置還是用utf8.
這兩個配置也是mysql默認的配置,不用改他。那么真正能影響亂碼的是,cmd鏈接mysql的時候。
舉個例子:
mysql>uroot p123456
回車
或者網上很多說是這樣子:
mysql>uroot p123456 --default-character-set=GBK
回車
以上兩種鏈接方式,都會造成亂碼。
重要:下面才是正確的鏈接方法:
mysql>uroot p123456 --default-character-set=utf8
mysql 保持鏈接,客戶端,服務端,三個地方編碼一致,才能不出現亂碼。
今天的分享就到這里,至於正確性,我測試了,是正確的。
如果有朋友測試,我的做法還是錯我的,請留言告訴我,我清理該帖子,免得誤導大家。哈哈