寫網頁向mysql數據庫存入數據,以後還須要讀取,這一過程當中數據庫中的中文都是亂碼。php
1.請教同窗,首先產生字段類型的疑問,肯定字段爲char 和 varchar 而且應該不存在超出存儲量的問題,並且之前也是用的這種類型,沒有問題。基本排除。html
2.懷疑仍是老問題——utf8和gb2312的編碼問題。mysql
嘗試更改數據庫編碼。 alter database db_name default character set gbk; 失敗。sql
難道要從新建的表纔是新的編碼?不想重作,而且根據之前的成功經驗以爲不是重建能解決的,決定先另尋方法。數據庫
3.師兄說用軟件 HeidiSQL 比較方便改變編碼類型,下載,鏈接數據庫出現了不能鏈接的問題,什麼什麼not allowed connect to this server啥的,還有什麼 Duplicate entry '%-root' for key 'PRIMARY' = =。百度以後根據http://www.jb51.net/article/31902.htm解決了工具的問題。 工具
選擇數據庫和表,在選項中更改默認字符集,看到果真是個奇怪的東西,latin什麼的,什麼鬼,果斷改掉!this
感受但願就在前方啊~結果!仍是亂的……編碼
4.頁面編碼、數據庫的編碼是同樣的,那就只剩過程當中的編碼問題了。根據http://www.cnblogs.com/pifoo/archive/2011/05/21/mySql.html,在php發送sql語句的時候加一句編碼 mysql_query("SET NAMES 'UTF8'"); ,問題解決啦~spa