用户登录
用户注册

分享至

使用MySQL在Android应用程序中存储和显示表情符号

  • 作者: 老表恰根金聖
  • 来源: 51数据库
  • 2022-10-19

问题描述

我有一个应用程序通过套接字与NodeJS服务器对话,该服务器通过HTTP与PHP对话,而PHP正在使用MySQL。

当我尝试在文本字段中插入表情符号并将其保存到数据库时,当我拿回它时,我看到"?"。

如果我从维基百科复制表情符号(例如?? ?? ??? ???)并强制它们到数据库,当我选择它们时,它会显示?? ?? ?? ??

注意:数据库中的字段为utf8mb4bin。

  • 为什么我无法将表情符号直接从我的设备存储到数据库?
  • 为什么有些表情包会显示,而另一些则不会?

注意:我也只尝试了PHP和MySQL,但没有成功。

推荐答案

1.)数据库: 将数据库默认集合更改为**utf8mb4**。

2)表: 将表集合更改为**字符集utf8mb4 COLLATE utf8mb4_bin**。

Query :                                                                                                                                                         

        ALTER TABLE Tablename CONVERT TO CHARACTER SET utf8mb4 COLLATE 

utf8mb4_bin

3)编码:

insert into tablename (column1,column2,column3,column4,column5,column6,column7) values ('273','3','Hdhdhdh????????hzhzhzzhjzj 我爱你 ?',49,1,'2016-09-13 08:02:29','2016-09-13 08:02:29')

4)在数据库连接中设置utf8mb4:

 $database_connection = new mysqli($server, $user,$password,$database_name); 
  $database_connection->set_charset("utf8mb4");
软件
前端设计
程序设计
Java相关