谈谈我对MYSQL乱码的解决办法
生活随笔
收集整理的這篇文章主要介紹了
谈谈我对MYSQL乱码的解决办法
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
經(jīng)常更換虛擬主機(jī),而各個(gè)服務(wù)商的MYSQL版本不同,當(dāng)導(dǎo)入數(shù)據(jù)后,總會(huì)出現(xiàn)亂碼等無(wú)法正常顯示的問(wèn)題,查了好多資料,總結(jié)出自己的一點(diǎn)技巧:
| WINDOWS 下導(dǎo)入應(yīng)該這樣 使用MYSQL的命令 在DOS命令下進(jìn)入mysql的bin目錄下,輸入mysql -uroot -p密碼 數(shù)據(jù)庫(kù)名稱(chēng)<要恢復(fù)的數(shù)據(jù)庫(kù), 例如我們要把D盤(pán)的一個(gè)名稱(chēng)為test.sql的數(shù)據(jù)庫(kù)恢復(fù)到本地的test2這個(gè)數(shù)據(jù)庫(kù),那么就這樣: mysql -uroot -p密碼 test2以前的國(guó)外主機(jī)用的Mysql是4.x系列的,感覺(jué)還比較好,都無(wú)論GBK和UTF-8都沒(méi)有亂碼,沒(méi)想到新的主機(jī)的Mysql是5.0版本的,導(dǎo)入數(shù)據(jù)后,用Php讀出來(lái)全是問(wèn)號(hào),亂碼一片,記得我以前也曾經(jīng)有過(guò)一次切換出現(xiàn)亂碼的經(jīng)驗(yàn),原因肯定是Mysql版本之間的差異問(wèn)題。 只好查資料,發(fā)現(xiàn)了一個(gè)解決方法,就是在mysql_connect后面加一句SET NAMES UTF8,即可使得UTF8的數(shù)據(jù)庫(kù)消除亂碼,對(duì)于GBK的數(shù)據(jù)庫(kù)則使用SET NAMES GBK,代碼如下: $mysql_mylink = mysql_connect($mysql_host, $mysql_user, $mysql_pass); mysql_query("SET NAMES 'GBK'"); |
數(shù)據(jù)庫(kù)字符集為utf-8
連接語(yǔ)句用這個(gè)
mysql_query("SET NAMES 'UTF8'");
mysql_query("SET CHARACTER SET UTF8");
mysql_query("SET CHARACTER_SET_RESULTS=UTF8'");
還有個(gè)方法就是,如果你自己的機(jī)器的話(huà),可以更改MYSQL字符集,一般在MYSQ4和MYSQL5這兩個(gè)版本中有效
總結(jié)
以上是生活随笔為你收集整理的谈谈我对MYSQL乱码的解决办法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Shell脚本——变量
- 下一篇: SQLPlus命令详细说明