mysql怎么存储表情 mysql存储表情字符

mysql 如何存储 emoji

之前我也遇到这样的问题,具体原因是因为emoji表情大小为四个字节,但一般的utf8编码下的mysql只能存储2到3个字节,具体的解决办法是把要存储的emoji表情的那个字段类型改为longtext,要是不行把utf8编码改为utf8mb4

创新互联是一家集网站建设,平泉企业网站建设,平泉品牌网站建设,网站定制,平泉网站建设报价,网络营销,网络优化,平泉网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。

我当时好像就是这么解决的,你试试

怎么将emoji表情存入mysql

mysql

5.5.3

开始,mysql

支持一种

utf8mb4

的字符集,这个字符集能够支持

4

字节的

utf8

编码的字符。

utf8mb4

字符集能够完美地向下兼容

utf8

字符串。在数据存储方面,当一个普通中文字符存入数据库时仍然占用

3

个字节,在存入一个

unified

emoji

表情的时候,它会自动占用

4

个字节。所以在输入输出时都不会存在乱码的问题了。由于

utf8mb4

utf8

的超集,从

utf8

升级到

utf8mb4

不会有任何问题,直接升级即可;如果从别的字符集如

gb2312

或者

gbk

转化而来,一定要先备份数据库。然后,修改

mysql

的配置文件

/etc/my.cnf,修改连接默认字符集为

utf8mb4

,然后在连接数据库以后首先执行一句

sql:

set

names

utf8mb4;。

1.

修改my.cnf

my.ini

[mysqld]

character-set-server=utf8mb4

[mysql]

default-character-set=utf8mb4

修改后重启mysql

登陆mysql,

show

variables

like

'character%';

可以查看编码是否已经修改成功。

2、修改数据库和数据表为相应的

utf8mb4

格式。

alter

table

table_name

convert

to

character

set

utf8mb4

collate

utf8mb4_bin;

3、在代码中,连接数据库成功后,执行

"set

names

utf8mb4"

搜狗输入法表情 如何存入mysql数据库

创建数据库

选择开始菜单中→程序→【Management SQL Server 2008】→【SQL Server Management Studio】命令,打开【SQL Server Management Studio】窗口,并使用Windows或 SQL Server身份验证建立连接。

在【对象资源管理器】窗口中展开服务器,然后选择【数据库】节点

右键单击【数据库】节点,从弹出来的快捷菜单中选择【新建数据库】命令。

执行上述操作后,会弹出【新建数据库】对话框。在对话框、左侧有3个选项,分别是【常规】、【选项】和【文件组】。完成这三个选项中的设置会后,就完成了数据库的创建工作,

在【数据库名称】文本框中输入要新建数据库的名称。例如,这里以“新建的数据库”。

在【所有者】文本框中输入新建数据库的所有者,如sa。根据数据库的使用情况,选择启用或者禁用【使用全文索引】复选框。

在【数据库文件】列表中包括两行,一行是数据库文件,而另一行是日记文件。通过单击下面的【添加】、【删除】按钮添加或删除数据库文件。

切换到【选项页】、在这里可以设置数据库的排序规则、恢复模式、兼容级别和其他属性。

切换到【文件组】页,在这里可以添加或删除文件组。

完成以上操作后,单击【确定】按钮关闭【新建数据库】对话框。至此“新建的数据”数据库创建成功。新建的数据库可以再【对象资源管理器】窗口看到。

如何将Emoj表情插入mysql5.6数据库

1、桌面上右击 计算机,选择“管理”, 选择“服务和应用程序”---“服务”, 在里面找到MySQL56的服务。

2、右击 MySQL服务,查看“属性”:往后拖一下,找到—default-file下图中画框部分,这里指明了MySQL启动的时候要加载的配置文件.

3、 找到该路径下的配置文件,进行修改。

4、 具体修改内容:

文字:

[client]

port=3306

default-character-set=utf8mb4

[mysql]

port=3306

default-character-set=utf8mb4

[mysqld]

port=3306

character-set-client-handshake= FALSE

character-set-server= utf8mb4

collation-server= utf8mb4_unicode_ci

init_connect='SET NAMES utf8mb4'

5、 然后重启MySQL56服务。

6、 在运行里面,找到并打开mysql command line,使用以下命令查看是否生效。

SHOWVARIABLES WHERE Variable_name LIKE 'character/_set/_%' OR Variable_name LIKE'collation%';

看到下面这个画面就说明生效了:

7、以为这样就完了吗?No,即使是这样我们无论是在mysql workbench还是通过python+mysqldb建立的utf8mb4数据库其实还是utf-8的,也正因如此,我们的emoj字符才一直不能插入到数据库中。

即使建立的数据库是utf8mb4的,我们看到这个数据库还是utf8的。

所以我们还需要继续实验,仔细看修改配置文件里面有一句:init_connect='SETNAMES utf8mb4',那我可以拿来用到数据库中。

果然,发现加上“SET NAMES utf8mb4;”这句以后,数据库变成了utf8mb4.:


分享题目:mysql怎么存储表情 mysql存储表情字符
分享路径:http://cdiso.cn/article/hjdges.html

其他资讯