我们尝试用JOOQ在我们的MySQL 5.6数据库中存储和阅读表情符号。数据库、表和列使用字符集utf8mb4和排序规则utf8mb4_unicode_ci。使用MySQL工作台,我可以创建和选择表情符号。所以数据库应该已经准备好了。
但是当我用JOOQ存储一个表情符号时,我得到:第1SQL行的列'test‘的字符串值'\xF0\x9F\x98\x80’不正确
DSLContext dslContext = DSL.using(dataSource, SQLDialect.MYSQL);
dslContext.insertInto(table)
.set(testRecord)
.returning()
.fetchOne();检索我在MySQL工作台中存储的en emoji效果很好。
发布于 2016-07-02 02:31:48
要在应用程序中使用utf8mb4,请确保在服务器级别或在执行查询之前设置它。
有两种方法可以做到:
https://stackoverflow.com/questions/38151684
复制相似问题