国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

mysql中插入表數據中文亂碼問題的解決方法

2024-07-25 19:08:56
字體:
來源:轉載
供稿:網友

一、問題

開發中遇到將其它數據庫數據插入到mysql數據庫表中一直會報類似如下錯誤:

Incorrect string value: '/xE6/x88/x91' for column 'name' at row 1

mysql,插入,表數據,中文亂碼

二、分析

1.我先去查了兩個數據庫表中此字段對應的類型都是 varchar,所以不存在類型不一致導致插入報錯的問題。

2. 排除字段類型不一致導致的錯誤后,我猜測是中文亂碼問題,然后插入純英文數據發現沒有報錯,所以確定了是中文亂碼問題。然后網上百度發現是mysql默認的編碼問題導致的中文亂碼。

三、解決方案

1. 檢查本地mysql安裝文件目錄下的my.ini配置文件,服務器和客戶端的默認編碼方式是否是utf8

[mysqld]# 服務端使用的字符集默認為UTF8character-set-server=utf8[client]# 設置mysql客戶端連接服務端時默認使用的端口default-character-set=utf8

2.上一步無誤后,打開命令行,輸入:net start mysql ,啟動mysql服務;

顯示“服務已經成功啟動”之后,輸入命令“mysql”,使用數據庫;

mysql,插入,表數據,中文亂碼

查看數據庫表的字符集編碼格式:輸入命令 “ show create table test.xtt_test_copy; ”;

mysql,插入,表數據,中文亂碼

如上圖所示,發現默認是"latin1"并不是“utf8”,需要繼續手動修改,輸入命令 “ ALTER TABLE test.xtt_test_copy CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci; ”,繼續輸入命令 “show create table test.xtt_test_copy; ”查看默認數據庫表的字符集編碼改為了“utf8”;mysql,插入,表數據,中文亂碼

查看數據庫的字符集編碼格式:輸入命令 “show creat database test; ”;

mysql,插入,表數據,中文亂碼

如上圖所示,發現默認,是"latin1"并不是“utf8”,需要繼續手動修改,輸入命令 “ ALTER DATABASE test DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;”,繼續輸入命令 “SHOW CREATE database test; ” ,查看默認數據庫表的字符集編碼改為了“utf8”;

mysql,插入,表數據,中文亂碼

3. 最后,重啟服務就可以了 ~

mysql> net stop mysql;mysql> net start mysql;

在我們平時使用mysql的過程中,經常會碰到中文亂碼的情況,根據平時的工作經驗我總結歸納了以下四個需要注意的地方:

1. mysql啟動時的字符集,在myini文件中配置 default-character-set=字符集 ,放在,[WinMySQLadmin]之上; 

2. 數據庫建表的過程中設置字符集,在CREATE語句最后的 CHARSET=字符集 語句中設置; 

3. 在驅動url中的選項中設置字符集,jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=字符集; 

4. 在web顯示頁中設置顯示的字符集, <%@ page contentType="text/html; charset=字符集" language="java" import="java.sql.*" errorPage="" %>在servelt中則是response.setContentType("text/html;charset=字符集");

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對VeVb武林網的支持。


注:相關教程知識閱讀請移步到MYSQL教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 罗山县| 临猗县| 楚雄市| 沐川县| 竹溪县| 丹棱县| 岱山县| 永登县| 宁波市| 德庆县| 旬阳县| 青州市| 美姑县| 香港| 宁陕县| 左云县| 常山县| 佳木斯市| 沙洋县| 长泰县| 孝义市| 临沧市| 铜鼓县| 尖扎县| 蒙城县| 内乡县| 苏尼特右旗| 四会市| 镇坪县| 常熟市| 曲松县| 彰化县| 永修县| 沁阳市| 东丰县| 丰镇市| 沅江市| 石楼县| 沅陵县| 城固县| 丽水市|