MYSQL中文乱码问题,恐怕是困扰国内使用者的最大的问题了。
它不仅有存储编码,还有传输编码。
在今天,我才明确的知道,一个MYSQL连接,如果不设置,它默认就是latin1瑞士语系。不管你程序给她的是不是UTF8,或者你DB里的编码格式是不是UTF8,总之,它传输时就转换为LATIN1。抓狂啊,以前用UTF8用了这么长时间,竟然一次都没发现这个问题。
当我第一次使用get_character_set_info获取到它的charset的时候,我惊呆了。
瞬间,线上数十万条数据需要转换这个现实,就把我砸的灰头土脸。
所以我记住了,以后连接后,一定要用set_character_set来设置成'utf8'才行啊。