mysql存储表情测试_Mysql正确的储存处emoji表情
今天在給一個老項目做msyql儲存emoji表情時,一直報[error][10501]SQLSTATE[HY000]:Generalerror:1267Illegalmixofcollations(utf8mb4_general_ci,IMPLICIT)and(utf8_general_ci,COERCIBLE)foroperation'like'。數據庫編碼是utf8mb4_general_ci,表的編碼也是utf8mb4_general_ci,字段的編碼也是utf8mb4_general_ci,可以是一直寫入emoji表情到目標字段一直報上面的錯誤,網上找了很多資料才知道,是因為在寫入時要先查詢是否存在,在查詢條件中只要有那個要寫入emoji的字段就會出這個錯誤。又在網上找了很多關于mysql儲存emoji的文章重新梳理了一遍發現,是因為數據庫的連接方式還是utf8。。。。。
趁著這個事,總結一下如果用Mysql的utf8mb4_general_ci編碼儲存emoji時的整體正確全部環節:
1、數據庫字符集編碼為utf8mb4_general_ci;
2、表的字符集編碼為utf8mb4_general_ci;
3、字段的字符集編碼為utf8mb4_general_ci;
4、應用的數據庫配置編碼為utf8mb4_general_ci,TP5.+后是在database.php下的charset設為“utf8mb4”。
這樣全部設置好后才可以使用mysql儲存emoji表情。
總結
以上是生活随笔為你收集整理的mysql存储表情测试_Mysql正确的储存处emoji表情的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql自动从另外表取数_你在 Doc
- 下一篇: MySQL创建索引跳过redo_明明我建