emoji表情符號MYSQL資料庫的處理

2021-09-01 09:22:19 字數 394 閱讀 4248

資料庫編碼格式utf-8

儲存報錯:incorrect string value: '\xf0\x9f\x88\xb2' for column *** at row 1

原因:emoji表情符號為4個位元組的字元,而 utf8 字符集只支援1-3個位元組的字元,導致無法寫入資料庫。

多麼痛的領悟? 對的 --> 永遠不要在mysql中使用utf8,改用utf8mb4

1.修改資料庫編碼

受限於mysql對 utf8mb4 字符集的支援

兩種方法都有介紹:

2.轉碼儲存

把資料轉成資料能夠儲存的格式,可以前端轉碼,也已後台轉碼,這裡是後台轉碼。

2)既然轉碼可以,應該可以轉成base64...

附錄:

移動端的emoji表情符號插入MySQL資料庫失敗

插入資料時候報了錯 error updating database.cause j a.sql.sqlexception incorrect string value xf0 x9f x98 x84 for column bak2 at row 1 這是因為 移動端的emoji表情符號是4個位元組,...

MySQL資料庫讀寫Emoji表情符號報錯

1 mysql的版本 utf8mb4的最低mysql版本支援版本為5.5.3 若不是,請公升級到較新版本。2 mysql驅動 5.1.34可用,最低不能低於5.1.13 開始沒修改mysql的配置檔案 導致伺服器的mysql驅動jar包只能用5.1.13版本,公升級版本就會報錯,坑死 3 修改mys...

MySQL資料庫讀寫Emoji表情符號報錯

1 mysql的版本 utf8mb4的最低mysql版本支援版本為5.5.3 若不是,請公升級到較新版本。2 mysql驅動 5.1.34可用,最低不能低於5.1.13 開始沒修改mysql的配置檔案 導致伺服器的mysql驅動jar包只能用5.1.13版本,公升級版本就會報錯,坑死 3 修改mys...