mysql支持emoji解决办法

mysql显示不了emoji表情或者显示??,缘由这里不解释,直接说解决办法。(主要就是修改utf8mb4)mysql

1.修改表sql

ALTER TABLE `TABLE_NAME` CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci; 

 2.修改字段数据库

ALTER TABLE `TABLE_NAME`MODIFY COLUMN `COLUMN_NAME`  varchar CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;

 3.修改客户端链接时charset设计

例: 在thinkPHP中,配置连接数据库参数时,'DB_CHARSET' => 'utf8mb4'server

 

作到这里,基本已经能够显示emoji表情了。若是不行 接着下面。blog

4.修改数据库环境ci

SHOW VARIABLES WHERE Variable_name LIKE 'character\_set\_%' OR Variable_name LIKE 'collation%';io

+—————————---  ----+--------------------------+
| Variable_name                 | Value                         |
+-----------------------------+-------------------- -----+
| character_set_client         | utf8mb4                     |
| character_set_connection  | utf8mb4                    |
| character_set_database    | utf8mb4                    |
| character_set_filesystem   | binary                       |
| character_set_results       | utf8mb4                     |
| character_set_server        | utf8mb4                     |
| character_set_system       | utf8                           |
| collation_connection         | utf8mb4_general_ci     |
| collation_database           | utf8mb4_general_ci     |
| collation_server               | utf8mb4_general_ci      |
+-----------------------------+——————---—————+
 
修改例句:
mysql>    set character_set_client=utf8mb4;
 
修改为如上表模样就能够了。
 
若是还不行,请从新编译mysql,不过楼主没试太久不说了。。
 
 
================================================================
其实最好的方法是在建库建表时就设计好
CREATE DATABASE a DEFAULT CHARACTER SET utf8mb4 DEFAULT COLLATE utf8mb4_general_ci CREATE TABLE b () ENING=InnoDB CHARACTER utf8mb4 COLLATE utf8mb4_general_ci
相关文章
相关标签/搜索