Mysql資料庫,表中有中文時,select出來好多問號(?)的解決方案

來源:互聯網
上載者:User

標籤:

在QQ群裡問了一些高手,同時參考了這篇文章:http://huangyunbin.iteye.com/blog/1113983,終於把這個問題搞定了。

首先,我用的是zip包的Mysql,直接解壓使用的,網上說修改my.ini或者my.cnf在我機器上根本就找不到。但是my.ini這個東西是可以自己添加的。將mysql目錄中的my-default.ini檔案複製一份(原來的模板還是留一份不要亂動的好),重新命名為my.ini。開啟my.ini,在最後添上如下兩行:

[mysql]default-character-set=utf8

儲存。同時要檢查 ./data/performance_schema目錄下的db.opt檔案中有這樣兩行:

default-character-set=utf8default-ollation=utf8_chinese_ci

之後是在資料庫裡進行設定。在mysql中輸入

1 mysql> show variables like ‘‘char%‘‘;

可以看到我的資料庫中字元集是醬嬸的:

遵照大部分網友的建議,除了filesystem那個binary不動,其它全部改成utf8好了。

1 MYSQL>set character_set_client = ‘utf8‘;2 MYSQL>set character_set_connection = ‘utf8‘;3 MYSQL>set character_set_database = ‘utf8‘;4 MYSQL>set character_set_results= ‘utf8‘;5 MYSQL>set character_set_server=‘utf8‘;

OK。可以再次執行show variables like ‘‘char%‘‘;查看修改結果。現在字元集都是UTF-8了。

最後一步,要修改之前亂碼的表,將字元編碼也修改為UTF-8:

1 MYSQL>alter table 表名 modify 列名 欄位類型 character set utf8;

這樣就完成啦。再select一下之前的表,中文是不是都變過來了?

 

====================廣告時間====================

最後還是推薦一下我的群:魚香肉絲。群號:234509621。這裡有產品經理,有測試人員,有代碼大牛,有立志於從事IT行業的正在讀書的明日之星,還有各種技術資料。歡迎IT患者加入。不過加群有限制,請註明加群的理由,否則管理員不會給通過的(一般寫個IT啊,電腦啊,演算法啊,或者做什麼工作的,就差不多可以)。進群後先跟大家打個招呼,然後到群檔案中下載群規看看。之後就可以跟大家愉快的玩耍了。

Mysql資料庫,表中有中文時,select出來好多問號(?)的解決方案

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.