MySQL插入emoji表情失敗總結(jié)

錯(cuò)誤描述:
使用的是Mysql數(shù)據(jù)庫们衙,在插入數(shù)據(jù)的時(shí)候報(bào)以下錯(cuò)誤:
Incorrect string value: '\xF0\x9F\x98\x81' for column 'declaration' at row 1

失敗場景
"活動(dòng)宣言" 字段中存在emoji表情,調(diào)用jdbc往mysql數(shù)據(jù)庫插入的時(shí)候拋出異常java.sql.SQLException: Incorrect string value: '\xF0\x9F\x98\x81' for column 'declaration' at row 1

失敗原因
mysql的utf8編碼的一個(gè)字符最多3個(gè)字節(jié),但是一個(gè)emoji表情為4個(gè)字節(jié)祖凫,所以utf8不支持存儲(chǔ)emoji表情。但是utf8的超集utf8mb4一個(gè)字符最多能有4字節(jié)拨拓,所以能支持emoji表情的存儲(chǔ)苏遥。

解決方案
知道了原因,就好解決了彬犯,無非就是調(diào)整字符集向楼,支持存儲(chǔ)4個(gè)字節(jié);主要兩個(gè)方面谐区,一是將數(shù)據(jù)庫湖蜕、表、字段的字符集調(diào)整為utf8mb4字符集宋列,二是將Mysq的環(huán)境配置變量調(diào)整為utf8mb4字符集昭抒;

一. 修改database、table、column字符集
1灭返、修改database字符集
ALTER DATABASE 數(shù)據(jù)庫名 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci;

2盗迟、修改table字符集
ALTER TABLE 表名 CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;

3、修改column字符集
ALTER TABLE 表名 CHANGE 字段名 字段名 該字段原來的數(shù)據(jù)類型 CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;

以上三種可以根據(jù)自己的實(shí)際情況來選擇修改婆殿;

二. 查看mysql配置變量
SHOW VARIABLES WHERE Variable_name LIKE 'character_set_%' OR Variable_name LIKE 'collation%';

image.png

注意character_set_server這個(gè)變量的值是否等于utf8mb4,如果不是那么看第三步罩扇,進(jìn)行修改婆芦。

三. 修改MySQL配置文件
這邊mysql是安裝在centos下的,配置文件名稱為my.cnf,路徑按照自己安裝的目錄來喂饥。
vim /etc/my.cnf

image.png

找到character_set_server消约,將其值設(shè)置為 utf8mb4,保存退出员帮;然后重啟下mysql服務(wù)
進(jìn)入mysql的bin目錄:service mysqld restart

重新啟動(dòng)mysql后或粮,再次輸入表情,提交保存數(shù)據(jù)成功捞高。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末氯材,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子硝岗,更是在濱河造成了極大的恐慌氢哮,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,948評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件型檀,死亡現(xiàn)場離奇詭異冗尤,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)胀溺,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,371評論 3 385
  • 文/潘曉璐 我一進(jìn)店門裂七,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人仓坞,你說我怎么就攤上這事背零。” “怎么了无埃?”我有些...
    開封第一講書人閱讀 157,490評論 0 348
  • 文/不壞的土叔 我叫張陵捉兴,是天一觀的道長。 經(jīng)常有香客問我录语,道長倍啥,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,521評論 1 284
  • 正文 為了忘掉前任澎埠,我火速辦了婚禮虽缕,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘蒲稳。我一直安慰自己氮趋,他們只是感情好伍派,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,627評論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著剩胁,像睡著了一般诉植。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上昵观,一...
    開封第一講書人閱讀 49,842評論 1 290
  • 那天晾腔,我揣著相機(jī)與錄音,去河邊找鬼啊犬。 笑死灼擂,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的觉至。 我是一名探鬼主播剔应,決...
    沈念sama閱讀 38,997評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼语御!你這毒婦竟也來了峻贮?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,741評論 0 268
  • 序言:老撾萬榮一對情侶失蹤应闯,失蹤者是張志新(化名)和其女友劉穎月洛,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體孽锥,經(jīng)...
    沈念sama閱讀 44,203評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡嚼黔,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,534評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了惜辑。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片唬涧。...
    茶點(diǎn)故事閱讀 38,673評論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖盛撑,靈堂內(nèi)的尸體忽然破棺而出碎节,到底是詐尸還是另有隱情,我是刑警寧澤抵卫,帶...
    沈念sama閱讀 34,339評論 4 330
  • 正文 年R本政府宣布狮荔,位于F島的核電站,受9級特大地震影響介粘,放射性物質(zhì)發(fā)生泄漏殖氏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,955評論 3 313
  • 文/蒙蒙 一姻采、第九天 我趴在偏房一處隱蔽的房頂上張望雅采。 院中可真熱鬧,春花似錦、人聲如沸婚瓜。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,770評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽巴刻。三九已至愚铡,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間胡陪,已是汗流浹背沥寥。 一陣腳步聲響...
    開封第一講書人閱讀 32,000評論 1 266
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留督弓,地道東北人营曼。 一個(gè)月前我還...
    沈念sama閱讀 46,394評論 2 360
  • 正文 我出身青樓乒验,卻偏偏與公主長得像愚隧,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子锻全,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,562評論 2 349

推薦閱讀更多精彩內(nèi)容

  • 失敗場景 用戶昵稱中存在emoji表情狂塘,調(diào)用jdbc往mysql數(shù)據(jù)庫插入的時(shí)候拋出異常java.sql.SQLE...
    許渺閱讀 2,740評論 2 17
  • 由于需要實(shí)現(xiàn)emoji表情評論的功能,所以數(shù)據(jù)庫需要支持emoji表情的存儲(chǔ)鳄厌,根據(jù)查詢的資料最終實(shí)現(xiàn)了該功能荞胡,現(xiàn)將...
    丶Finley閱讀 1,194評論 0 0
  • 什么是emoji emoji在誕生之初有多種標(biāo)準(zhǔn),所以早期兼容性是個(gè)問題了嚎。但是現(xiàn)在已經(jīng)標(biāo)準(zhǔn)化了泪漂,是unicode的...
    frankgo閱讀 1,575評論 0 0
  • 轉(zhuǎn) 問題描述: 如果UTF8字符集且是Java服務(wù)器的話,當(dāng)存儲(chǔ)含有emoji表情時(shí)歪泳,會(huì)拋出類似如下異常: jav...
    天上掉陷阱閱讀 758評論 0 3
  • 1萝勤、問題:mysql 遇到某些中文插入異常最近有同學(xué)反饋了這樣一個(gè)問題: 上述語句在腳本中 load 入庫的時(shí)候會(huì)...
    kanasu閱讀 2,824評論 1 5