一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|數據庫技術|

服務器之家 - 數據庫 - Mysql - mysql中插入emoji表情失敗的原因與解決

mysql中插入emoji表情失敗的原因與解決

2019-06-13 10:19許渺服務器之家 Mysql

這篇文章主要給大家介紹了關于mysql中插入emoji表情失敗的原因與解決方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

失敗場景

用戶昵稱中存在emoji表情,調用jdbc往mysql數據庫插入的時候拋出異常 java.sql.SQLException: Incorrect string value: '\xF0\x9F\x90\x9B'

失敗原因

mysql的utf8編碼的一個字符最多3個字節,但是一個emoji表情為4個字節,所以utf8不支持存儲emoji表情。但是utf8的超集utf8mb4一個字符最多能有4字節,所以能支持emoji表情的存儲。

下面話不多說了,來一起看看詳細的介紹吧

解決方案

一. 修改database、table、column字符集

修改database字符集

ALTER DATABASE 數據庫名 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci;

修改table字符集

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

修改column字符集

ALTER TABLE 表名 CHANGE 字段名 字段名 該字段原來的數據類型 CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;

以上三種可以根據自己的實際情況來選擇修改;

二. 查看mysql配置變量

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

mysql中插入emoji表情失敗的原因與解決

注意 character_set_server 這個變量的值是否等于 utf8mb4 ,如果不是那么看第三步。

三. 修改mysql配置文件

這邊 mysql 是安裝在 centos 下的,配置文件名稱為 my.cnf ,路徑按照自己安裝的目錄來。

vim /etc/my.cnf /etc/mysql/my.cnf

mysql中插入emoji表情失敗的原因與解決

my.cnf

找到 character_set_server ,將其值設置為 utf8mb4 ,保存退出;試著重新 insert 看是否報錯;如果報錯可能需要重啟下 mysql 服務

service mysqld restart

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對服務器之家的支持。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 午夜伦伦电影理论片费看 | 欧美精选视频 | 欧美一级视频免费观看 | xxoo做爰猛烈动态 | 成人免费观看www视频 | 波多野结衣快播 | 24adc年龄18岁欢迎大驾光临 | 国产精品自拍一区 | 男人天堂网址 | bbc japanese黑人强行 | 99久久999久久久综合精品涩 | 蜜桃视频在线观看官网 | 免费一级日本c片完整版 | 男女乱淫真视频播放网站 | 污文啊好棒棒啊好了 | 秋霞午夜视频在线观看 | 国产亚洲女在线线精品 | 无套日出白浆在线播放 | 99热导航| 亚洲一区二区三区久久精品 | 欧美日韩国产手机在线观看视频 | 华人亚洲欧美精品国产 | 歪歪私人影院成人毛片 | 九九精品视频在线观看 | 欧美一级视频在线高清观看 | 日本老妇和子乱视频 | 欧美福利在线观看 | a在线观看欧美在线观看 | 四虎影院4hu | 99日影院在线播放 | 国产精品久久久久久久久免费观看 | 狠狠撸在线影院 | 国产视频久久久久 | 亚洲国产日韩欧美一区二区三区 | 日韩精品视频美在线精品视频 | 午夜想想爱午夜剧场 | 日本道高清 | 草莓绿巨人香蕉茄子芭乐 | 午夜影院小视频 | 成人永久免费视频 | 精品国产国产综合精品 |