Rumah >pangkalan data >tutorial mysql >MySQL 数据库保存 Emoji 表情及特殊符号

MySQL 数据库保存 Emoji 表情及特殊符号

步履不停
步履不停asal
2019-06-21 16:09:044676semak imbas

MySQL 数据库保存 Emoji 表情及特殊符号

何为 utf8mb4

  1. MySQL在5.5.3版本之后增加了这个utf8mb4的编码,mb4就是most bytes 4的意思,专门用来兼容四字节的unicode。其实,utf8mb4是utf8的超集

解决方法:

  1. 查看编码字符集:
    • SHOW  VARIABLES  WHERE Variable_name LIKE  'character\_set\_%'  OR Variable_name LIKE  'collation%';
    • 如结果为下图所示,则『引起保存不了特殊符号的原因可能与本文不同,这篇文章可能解决不了您的问题』;
      MySQL 数据库保存 Emoji 表情及特殊符号
    • 如若结果中的 value 字段与上图有出入,请继续阅读本文;
  2. 修改数据库编码:
    • ALTER DATABASE database CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci;
  3. 修改数据表编码:
    • ALTER TABLE table CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
  4. 修改表字段编码为:
    • ALTER TABLE table CHANGE column column VARCHAR(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
  5. 编辑 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'
  6. 重启 Mysql
    • service mysqld restart
  7. 再次查看编码字符集,如果与上文图中结果一致,则大功告成~

更多MySQL相关技术文章,请访问MySQL教程栏目进行学习!

Atas ialah kandungan terperinci MySQL 数据库保存 Emoji 表情及特殊符号. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn