小編給大家分享一下解決MySQL亂碼問(wèn)題的方法,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討方法吧!
創(chuàng)新互聯(lián)主營(yíng)湟中網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營(yíng)網(wǎng)站建設(shè)方案,成都APP應(yīng)用開(kāi)發(fā),湟中h5微信小程序開(kāi)發(fā)搭建,湟中網(wǎng)站營(yíng)銷(xiāo)推廣歡迎湟中等地區(qū)企業(yè)咨詢(xún)
mysql數(shù)據(jù)庫(kù)可以通過(guò)設(shè)定字符集,來(lái)使用對(duì)應(yīng)的字符集和檢驗(yàn)規(guī)則來(lái)組織字符。就像是解讀一片文章的時(shí)候用那種語(yǔ)言來(lái)解析。例如:中國(guó)人常使用的utf8編碼,代表的是中文。
所以一般我們?cè)趍ysql中遇到亂碼問(wèn)題可以通過(guò)將使用的字符集為utf-8即可解決。
mysql可以設(shè)定的字符集:
服務(wù)器的字符集
數(shù)據(jù)庫(kù)的字符集
表的字符集
字段的字符集
mysql數(shù)據(jù)庫(kù)中字符集介紹:
character_set_client:客戶(hù)端請(qǐng)求數(shù)據(jù)的字符集
character_set_connection:客戶(hù)機(jī)與服務(wù)器連接的字符集
character_set_database:默認(rèn)數(shù)據(jù)庫(kù)的字符集;如果沒(méi)有默認(rèn)數(shù)據(jù)庫(kù),就會(huì)使用 character_set_server指定的字符集(建議不要隨意更改)
character_set_filesystem:把 character_set_client轉(zhuǎn)換character_set_filesystem (默認(rèn)為binary, 不做任何轉(zhuǎn)換)
character_set_results:返回給客戶(hù)端的字符集
character_set_server:數(shù)據(jù)庫(kù)服務(wù)器的默認(rèn)字符集
character_set_system:系統(tǒng)字符集,默認(rèn)utf8。(用于數(shù)據(jù)庫(kù)的表、列和存儲(chǔ)在目錄表中函數(shù)的名字)
character_sets_dir:mysql字符集文件的保存路徑
產(chǎn)生亂碼的原因:
character_set_client與實(shí)際不符合
character_set_results與客戶(hù)端頁(yè)面不符合
我們可以通過(guò)更改字符集來(lái)解決亂碼:
臨時(shí)修改:
set character_set_client = ‘utf8’; set character_set_connection = ‘utf8’; set character_set_results = ‘utf8’;
或
set names utf8;
永久修改:
在mysql的my.cnf的配置文件中修改或添加下列:
[client] default-character-set = utf8 [mysqld] character_set_server = utf8 [mysql] default-character-set = utf8
看完了這篇文章,相信你對(duì)解決mysql亂碼問(wèn)題的方法有了一定的了解,想了解更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!