何為 utf8mb4:
- mysql在5.5.3版本之后增加了這個utf8mb4的編碼,mb4就是most bytes 4的意思,專門用來兼容四字節的unicode。其實,utf8mb4是utf8的超集
解決方法:
- 查看編碼字符集:
- SHOW ?VARIABLES ?WHERE Variable_name LIKE ?‘character_set_%’ ?OR Variable_name LIKE ?‘collation%’;
- 如結果為下圖所示,則『引起保存不了特殊符號的原因可能與本文不同,這篇文章可能解決不了您的問題』;
- 如若結果中的 value 字段與上圖有出入,請繼續閱讀本文;
- 修改數據庫編碼:
- ALTER DATABASE database CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci;;
- 修改數據表編碼:
- ALTER TABLE table CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;;
- 修改表字段編碼為:
- ALTER TABLE table CHANGE column column VARCHAR(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;;
- 編輯 my.ini 文件,添加或修改如下內容:
[client] default-character-set = utf8mb4 [mysql] default-character-set = utf8mb4 [mysqld] character-set-client-handshake = FALSE character-set-server = utf8mb4 collation-server = utf8mb4_unicode_ci init_connect='SET NAMES utf8mb4'
- 重啟 Mysql:
- service mysqld restart;
-
再次查看編碼字符集,如果與上文圖中結果一致,則大功告成~
更多MySQL相關技術文章,請訪問MySQL教程欄目進行學習!
? 版權聲明
文章版權歸作者所有,未經允許請勿轉載。
THE END