手机看片精品高清国产日韩,色先锋资源综合网,国产哺乳奶水91在线播放,乱伦小说亚洲色图欧洲电影

幫助中心 >  技術知識庫 >  數(shù)據(jù)庫 >  數(shù)據(jù)庫管理 >  MySQL數(shù)據(jù)庫經(jīng)典錯誤 九 數(shù)據(jù)庫總會出現(xiàn)中文亂碼的情況

MySQL數(shù)據(jù)庫經(jīng)典錯誤 九 數(shù)據(jù)庫總會出現(xiàn)中文亂碼的情況

2018-11-08 20:23:07 12541

數(shù)據(jù)庫總會出現(xiàn)中文亂碼的情況

有同學經(jīng)常會問,為什么我的數(shù)據(jù)庫總會出現(xiàn)中文亂碼的情況。一堆中文亂碼不知道怎么回事?當向數(shù)據(jù)庫中寫入創(chuàng)建表,并插入中文時,會出現(xiàn)這種問題。此報錯會涉及數(shù)據(jù)庫字符集的問題。

解決思路:對于中文亂碼的情況,記住老師告訴你的三個統(tǒng)一就可以。還要知道在目前的 MySQL 數(shù)據(jù)庫中字符集編碼都是默認的 UTF8。

處理辦法:

  • 數(shù)據(jù)終端,也就是我們連接數(shù)據(jù)庫的工具設置為 utf8。

  • 操作系統(tǒng)層面,可以通過 cat /etc/sysconfig/i18n 查看,也要設置為 utf8。

  • 數(shù)據(jù)庫層面,在參數(shù)文件中的 mysqld 下,加入 character-set-server=utf8。

Emoji 表情符號錄入 MySQL 數(shù)據(jù)庫中報錯:

Caused by: java.sql.SQLException: Incorrect string value: ‘e??—e?…’ for column ‘CONTENT’ at row 1 
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1074) 
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4096) 
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4028) 
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2490) 
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2651) 
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2734) 
at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2155) 
at com.mysql.jdbc.PreparedStatement.execute(PreparedStatement.java:1379)

解決思路:針對表情插入的問題,一定還是字符集的問題。

處理方法:我們可以直接在參數(shù)文件中,加入:

vim /etc/my.cnf 
[mysqld] 
init-connect=’SET NAMES utf8mb4′ 
character-set-server=utf8mb4

注:utf8mb4 是 utf8 的超集。


提交成功!非常感謝您的反饋,我們會繼續(xù)努力做到更好!

這條文檔是否有幫助解決問題?

非常抱歉未能幫助到您。為了給您提供更好的服務,我們很需要您進一步的反饋信息:

在文檔使用中是否遇到以下問題: