“𥻗”这种字,插入 MySQL 数据库,插不进去,插进去以后显示??怎么处理?

2017-04-01 17:14:20 +08:00
 coolair
2012 次点击
所在节点    问与答
8 条回复
johnny23
2017-04-01 17:17:24 +08:00
可以插米查
SourceMan
2017-04-01 17:18:40 +08:00
谁跟我一样觉得好污的吗??

楼主可以看下是不是需要跟存储 emoji 一样用其它编码格式
FifiLyu
2017-04-01 17:19:20 +08:00
确认表或数据库使用的编码是 utf-8 。
使用 utf-8 编码,是不会有这种问题的。
raptium
2017-04-01 17:21:25 +08:00
utf8mb4 应该可以,𥻗 用 UTF-8 编码需要 4 个字节, MySQL 普通的 utf8 只支持最多 3 个字节

https://dev.mysql.com/doc/refman/5.5/en/charset-unicode-utf8mb4.html
coolair
2017-04-01 17:24:11 +08:00
@johnny23
@SourceMan
@FifiLyu
@raptium 我是用的 utf8mb4 ,刚刚测试了下,直接用 phpmyadmin 可以插入,但是用 DataGrip 和用 Python 的 MySQLdb 插入的时候,却报错:
[HY000][1366] Incorrect string value: '\xF0\xA5\xBB\x97\xF0\xA5...' for column 'name' at row 1
billlee
2017-04-01 19:47:57 +08:00
你用的是 mysql-python 还是 mysqlclient?
pymysql 的性能比 MySQLdb 差很多
coolair
2017-04-01 22:54:57 +08:00
@billlee 我用的 MySQL-python 这个库。
billlee
2017-04-03 12:19:43 +08:00
r#7 @coolair 你可以试试 mysqlclient, API 也是 MySQLdb. Mysql-python 都几年没更新了,我记得那个时候 mysql 都还没有 utf8mb4.

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/352021

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX