我正在使用字符集utf8将一些非ascii(特别是亚洲字符)插入到mysql表列中,但是插入后,如果我再次检索它,它会显示为????。我检查了数据库、表和列字符集,都是utf8,有什么问题吗?
CREATE TABLE `test_utf` ( `test_id` bigint(20) NOT NULL auto_increment, `raw_text` longtext, PRIMARY KEY (`test_id`) ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8; insert into test_utf (raw_text) values('黄剑');
最佳答案
问题已解决!
我需要将 characterEncoding=UTF-8
添加到我正在使用的任何 mysql 客户端,
例如,当我使用jdbc
时,我需要在连接url中指定"jdbc:mysql://localhost/dbname?characterEncoding=UTF-8"
。
关于mysql utf8 字符集不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6887209/