亚洲av无码乱码国产一区二区,午夜理论片yy44880影院,午夜久久久久久禁播电影,熟睡人妻被讨厌的公侵犯

22
2023/12

寫入數(shù)據(jù)庫的內(nèi)容中包含emoji表情,導(dǎo)致寫入失敗報(bào)錯(cuò)如何處理?

發(fā)布時(shí)間:2023-12-22 15:23:29
發(fā)布者:已經(jīng)寫了
瀏覽量:
0

最新遇到的小問題,這種問題一般出現(xiàn)在移動(dòng)端使用手機(jī)填寫內(nèi)容或者發(fā)布文章的時(shí)候輸入了一些emoji表情或者其他的表情,導(dǎo)致寫入的時(shí)候報(bào)錯(cuò),一般報(bào)錯(cuò)內(nèi)容是: Incorrect string value: '\xF0\x9F\xA4\x97\xF0\x9F...' for column 'content' at row 1。

遇到這種錯(cuò)誤,有時(shí)候無法第一時(shí)間判斷問題出在哪里,我一開始以為是在截取內(nèi)容的時(shí)候因?yàn)?a href="/html/show-3104.html" target="_self">字符集的問題導(dǎo)致截取漢字的時(shí)候出現(xiàn)截取了半個(gè)漢字的問題導(dǎo)致的報(bào)錯(cuò),后來才發(fā)現(xiàn)是因?yàn)檫@種表情的問題,導(dǎo)致的報(bào)錯(cuò)。

這個(gè)問題解決起來也很簡(jiǎn)單,數(shù)據(jù)庫的字符集改為的utf8mb4格式,就可以解決這個(gè)問題。

寫入數(shù)據(jù)庫的內(nèi)容中包含emoji表情,導(dǎo)致寫入失敗報(bào)錯(cuò)如何處理?

有時(shí)候在創(chuàng)建數(shù)據(jù)庫的時(shí)候設(shè)置的就是utf8mb4的可能也不會(huì)生效,原因是因?yàn)?數(shù)據(jù)庫字符集的使用順序是:數(shù)據(jù)庫字符集 < 表字符集 < 表字段(列)字符集。可能你設(shè)置的數(shù)據(jù)庫是utf8mb4但是字段的字符集不是,所以最好是指定到對(duì)應(yīng)的字段才好。

如果在創(chuàng)建表時(shí)沒有指定字符集,那么將默認(rèn)使用數(shù)據(jù)庫的字符集。同樣地,如果在創(chuàng)建表的字段時(shí)沒有指定字符集,那么將默認(rèn)使用表的字符集。

MySQL支持多種字符集,其中最常用的是utf8和utf8mb4。utf8mb4是utf8的超集,支持四字節(jié)長(zhǎng)度的UTF8字符,包括emoji的編碼支持。

關(guān)鍵詞:
返回列表