java-web - 剛配置好的MySQL,插入中文,然后取出就亂碼,問(wèn)題到底處在哪邊?
問(wèn)題描述
如下面兩張圖,全部將character_set_client , character_set_connection 和 character_set_results 設(shè)為 gbk 或 utf8 均是亂碼,這到底是怎么回事啊?
問(wèn)題解答
回答1:1、檢查并修改mysql的my.ini的配置文件:
default-character-set=utf8
2、建立數(shù)據(jù)庫(kù)要指定字符集:
create database mydb default character set utf8 collate utf8_general_ci;
3、建立表也要指定字符集:
CREATE TABLE IF NOT EXISTS `mydb` ( `username` varchar(64) NOT NULL, `userid` int(11) NOT NULL, ) ENGINE=InnoDB DEFAULT CHARSET=utf8;回答2:
原因就那么幾個(gè):1你建立數(shù)據(jù)庫(kù)時(shí)字體沒(méi)有設(shè)定為utf8,系統(tǒng)默認(rèn)其他,然后你改用utf8,數(shù)據(jù)庫(kù)中內(nèi)容沒(méi)轉(zhuǎn)碼,然后取出來(lái)也就是亂碼2傳進(jìn)去的字符一開(kāi)始就不是utf8,,,3不知你用的什么是cmd還是shell,它用的編碼和你數(shù)據(jù)庫(kù)中保存的不一樣
相關(guān)文章:
