MYSQL中文亂碼問題,恐怕是困擾國內(nèi)使用者的最大的問題了。
它不僅有存儲編碼,還有傳輸編碼。
在今天,我才明確的知道,一個MYSQL連接,如果不設(shè)置,它默認(rèn)就是latin1瑞士語系。不管你程序給她的是不是UTF8,或者你DB里的編碼格式是不是UTF8,總之,它傳輸時就轉(zhuǎn)換為LATIN1。抓狂啊,以前用UTF8用了這么長時間,竟然一次都沒發(fā)現(xiàn)這個問題。
當(dāng)我第一次使用get_character_set_info獲取到它的charset的時候,我驚呆了。
瞬間,線上數(shù)十萬條數(shù)據(jù)需要轉(zhuǎn)換這個現(xiàn)實,就把我砸的灰頭土臉。
所以我記住了,以后連接后,一定要用set_character_set來設(shè)置成'utf8'才行啊。