MySQL插入Emoji表情報錯的解決方法

xmp7 10年前發布 | 22K 次閱讀 MySQL 數據庫服務器

今天做的了個獲取微信粉絲的功能,發現將昵稱插入數據庫報錯.長度肯定是夠的

    Incorrect string value: '\xF0\x9F\x98\x84\xF0\x9F  


找了點資料發現UTF-8編碼有可能是兩個、三個、四個字節。Emoji表情或者某些特殊字符是4個字節,而Mysql的utf8編碼最多3個字節,所以數據插不進去。

網上解決方案都是

修改mysql配置

1.在mysql的安裝目錄下找到my.ini,作如下修改:
[mysqld]
character-set-server=utf8mb4
[mysql]
default-character-set=utf8mb4

2 重啟

net stop mysql
net start mysql

3 修改表

 ALTER TABLE 表名 CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;

 本文由用戶 xmp7 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!