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