校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > MySQL如何插入Emoji表情

MySQL如何插入Emoji表情

熱門標簽:400電話鄭州申請 沃克斯電梯外呼線路圖 福州呼叫中心外呼系統哪家好 常州電銷外呼系統一般多少錢 北京人工外呼系統價錢 云南語音外呼系統平臺 天智外呼系統 地圖標注被騙三百怎么辦 房產智能外呼系統品牌

前言

今天在設計開源項目的反饋信息表時遇到了emoji表情插入失敗的問題,網上找了很多解決方案,答案五花八門,沒找到好使的。

經過一番折騰后,終于成功插入了emoji表情,本文就跟大家分享下我的實現過程,歡迎各位感興趣的開發者閱讀本文。

寫在前面

我的服務器是Mac系統,mysql使用brew安裝的,windows/linux它的配置文件位置可能有些不一樣,具體根據真實情況而定。

先跟大家看下它的報錯信息:

chat_system> UPDATE chat_system.feedback t SET t.comments = '反饋信息測試😂' WHERE t.id = 1
[2020-12-01 21:36:08] [HY000][1366] Incorrect string value: '\xF0\x9F\x98\x82' for column 'comments' at row 1
[2020-12-01 21:36:08] [HY000][1366] Incorrect string value: '\xF0\x9F\x98\x82' for column 'comments' at row 1

實現思路

因為數據庫默認是UTF-8編碼格式,普通的字符串占位3個字節而表情占位4字節,此時UTF-8就不夠用了,需要采用utf8mb4字符集就能解決這個問題了。

注意:utf8mb4字符集要求數據庫版本高于5.5.3。

那么,我們要做的事情如下所示:

  • 修改mysql配置文件,設置其編碼格式
  • 修改數據庫字符集編碼
  • 修改數據庫表字符集編碼

實現過程

mysql默認讀取配置的順序為:/etc/my.cnf、/etc/mysql/my.cnf、/usr/local/etc/my.cnf、~/.my.cnf,如果對應目錄下不存在這些配置文件,則需要自己新建一個。

  • 修改數據庫配置文件my.cnf,我的文件位置在: /usr/local/etc下,添加下述代碼
[mysqld]
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
init_connect = 'SET NAMES utf8mb4'
character-set-client-handshake = false
[client]
default-character-set=utf8mb4
[mysql]
default-character-set=utf8mb4

  • 修改數據庫字符集編碼,登錄mysql后執行下述sql語句。
# 設置數據庫字符集編碼,chat_system為數據庫名稱,根據自己的實際情況而來
ALTER DATABASE chat_system CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
  • 修改數據庫表的字符集編碼,登錄mysql后執行下述sql語句。
# 設置數據庫表字符集編碼,chat_system.feedback_comment_reply為我的數據庫下對應的表名稱,根據自己的實際情況而來
ALTER TABLE chat_system.feedback_comment_reply CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

完成上述操作后,我們來看看是否修改成功,登錄mysql后執行下述sql語句。

SHOW VARIABLES WHERE Variable_name LIKE 'character%' OR Variable_name LIKE 'collation%';

顯示下屬信息,則表示我們已經修改完成了。

測試用例

我們來往插入一個emoji表情來測試下:

UPDATE chat_system.feedback t SET t.comments = '反饋信息測試😂' WHERE t.id = 1;

如下所示,沒有報錯,插入成功。

我們用dataGrap查看下數據庫表中的數據,如下所示,它顯示了一個?,應該是軟件無法識別。

講道理,應該是插入成功了,我們用postman請求接口試下,成功顯示出來了😄。

以上就是MySQL如何插入Emoji表情的詳細內容,更多關于MySQL 插入Emoji表情的資料請關注腳本之家其它相關文章!

您可能感興趣的文章:
  • mysql存儲emoji表情步驟詳解
  • mysql中插入emoji表情失敗的原因與解決
  • MySQL無法存儲emoji表情解決方案分析
  • mysql存儲emoji表情報錯的處理方法【更改編碼為utf8mb4】
  • MySQL無法存儲Emoji表情問題的解決方法分析
  • MySQL插入emoji表情失敗問題的解決方法
  • 讓Java后臺MySQL數據庫能夠支持emoji表情的方法
  • 使MySQL能夠存儲emoji表情字符的設置教程

標簽:沈陽 拉薩 珠海 黔東 徐州 鹽城 沈陽 移動

巨人網絡通訊聲明:本文標題《MySQL如何插入Emoji表情》,本文關鍵詞  MySQL,如何,插入,Emoji,表情,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《MySQL如何插入Emoji表情》相關的同類信息!
  • 本頁收集關于MySQL如何插入Emoji表情的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 齐河县| 怀集县| 定结县| 古浪县| 夏河县| 上饶县| 都兰县| 景谷| 贵州省| 揭东县| 延吉市| 固镇县| 娄烦县| 衡东县| 嘉黎县| 天台县| 南江县| 蒙城县| 军事| 南康市| 和林格尔县| 泗水县| 剑川县| 鸡泽县| 武胜县| 平阴县| 葵青区| 临沂市| 柳州市| 蓬安县| 聂拉木县| 新干县| 南漳县| 黔江区| 浙江省| 嘉禾县| 咸阳市| 三河市| 宜城市| 永丰县| 宜春市|