sp42 2016-03-18 667浏览量
2016-10-27:如果一切该设置都设置了还是无效的话,试试在 mysql 链接字符串里面去掉 charset 参数!如下:
有童鞋对 Emoji 表情认知不深,对使用 Emoji 抵制,也不愿意去百度,所以有必要先科普下。
——其实这么简单的问题要说半天也是醉了。
不过就算升级 mysql 也不见得容易。当初以为升级数据库然后改改编码就可以,但试过之后没那么容易,不知道是不是 MySql 客户端的问题,NativeCat 和官方的 Workbench 也是如此。
通过客户端改编不行滴……下拉菜单那里無論怎么选择都是不行的……
相关参考:
复制一个命令
alter table foo.foo convert to character set utf8mb4 collate utf8mb4_unicode_ci
然后 Java 代码中必须声明这个:
SET NAMES 'utf8mb4'
才可以插入 Emoji 表情。
Mysql 配置
[client] default-character-set = utf8mb4 [mysqld] character-set-server=utf8mb4 collation-server=utf8mb4_unicode_ci [mysql] default-character-set = utf8mb4
还有就是升级一下 JDBC 驱动。
测试代码,也可以看看你的浏览器到底能否正确显示 Emoji 表情(不能显示就是 问号或者方块,升级浏览器吧!)。
Oh mygod,CSDN 的数据库插不入!要碰到 Emoji 字符就中断了!我还是用图片吧。
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
public class Test {
public static void main(String[] args) {
System.out.println("test string=" + "
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
分享数据库前沿,解构实战干货,推动数据库技术变革