㈠ java插入數據到mysql中文亂碼怎麼解決
1。創建資料庫的時候:
CREATE DATABASE `Db`
CHARACTER SET 'utf8 '
COLLATE 'utf8_general_ci ';
2.建表的時候:
CREATE TABLE `TableA` (
`ID` varchar(40) NOT NULL default ' ',
`UserID` varchar(40) NOT NULL default ' ', )
ENGINE=InnoDB DEFAULT CHARSET=utf8;
3.設置URL的時候:
jdbc:mysql://localhost:3306/database?useUnicode=true&characterEncoding=UTF-8
㈡ java mysql 中文亂碼
1、JSP頁面亂碼
這種亂碼的原因是應為沒有在頁面里指定使用的字元集編碼,解決方法:只要在頁面開始地方用下面代碼指定字元集編碼即可,
<%@ page contentType="text/html;charset=utf-8" language="java" %>
2、資料庫亂碼
這種亂碼會使你插入資料庫的中文變成亂碼,或者讀出顯示時也是亂碼,解決方法如下:
在資料庫連接字元串中加入編碼字元集
String Url="jdbc:mysql://localhost/digitgulf?user=root&password=root&useUnicode=true&characterEncoding=GB2312";
並在頁面中使用如下代碼:
response.setContentType("text/html;charset=gb2312");
request.setCharacterEncoding("gb2312");
3、中文作為參數傳遞亂碼
當我們把一段中文字元作為參數傳遞個另一頁面時,也會出現亂碼情況,解決方法如下:
在參數傳遞時對參數編碼,比如
RearshRes.jsp?keywords=" + java.net.URLEncoder.encode(keywords)
然後在接收參數頁面使用如下語句接收
keywords=new String(request.getParameter("keywords").getBytes("8859_1"));
希望對你有幫助。
㈢ 在java程序里向mysql資料庫中插入數據後出現中文亂碼
這個問題我也剛遇到過。應該是mysql安裝的問題,你可以重新安裝mysql試一下。安裝的時候得注意選項。不要選擇標准安裝,一直點擊next直到完成。應該在開始的時候選擇自定義安裝,在選擇字元集的時候點擊下拉菜單選擇gb2312這一項,應該能夠解決中文亂碼問題。
㈣ Java向Mysql插入中文在資料庫顯示是亂碼,但是資料庫的如果是中文查詢出來的是正常的,怎麼辦
需要看你mysql中字元編碼和讀取時候的編碼。mysql中默認是拉丁編碼,可以使用UTF-8讀取和插入。如果使用gbk或者gb2312是可能存在問題的
㈤ java向MySQL添加數據時中文亂碼怎麼解決
遇到漢字先做轉碼,然後再插入選擇,你資料庫的編碼類型的,如下例子有用
System.out.println("中文");//1
System.out.println("中文".getBytes());//2
System.out.println("中文".getBytes("GB2312"));//3
System.out.println("中文".getBytes("ISO8859_1"));//4
System.out.println(new String("中文".getBytes()));//5
System.out.println(new String("中文".getBytes(),"GB2312"));//6
System.out.println(new String("中文".getBytes(),"ISO8859_1"));//7
System.out.println(new String("中文".getBytes("GB2312")));//8
System.out.println(new String("中文".getBytes("GB2312"),"GB2312"));//9
System.out.println(new String("中文".getBytes("GB2312"),"ISO8859_1"));//10
System.out.println(new String("中文".getBytes("ISO8859_1")));//11
System.out.println(new String("中文".getBytes("ISO8859_1"),"GB2312"));//12
System.out.println(new String("中文".getBytes("ISO8859_1"),"ISO8859_1"));//13
㈥ Java里的中文添加到mysql里變成亂碼。
編碼問題,java默認的是unicode編碼,把工具裡面選擇java項目右鍵-屬性,修改編碼格式GBK修改為UTF-8都試一試!
㈦ Java連接mysql資料庫並插入中文數據顯示亂碼
你應該是安裝mysql的時候編碼你是選擇默認的吧。
你可以找到mysql的安裝目錄MySQL Server 5.0\bin\MySQLInstanceConfig.exe
重新配置下就可以了。一般選擇utf-8編碼。
再一個如果資料庫開始就建立好了。alter database 表名 character set utf8;
連接資料庫設置編碼
jdbc:mysql://地址:3306/資料庫名?characterEncoding=utf8
㈧ java項目向mysql中插入中文出現亂碼!求解!!!
就是亂碼,本身UNICODE編碼的中文按utf-8字元集保存,在資料庫中保存的就是utf-8字元
簡單的說一個漢字轉換為兩個utf-8字元了,在資料庫中已不是漢字了。
java取回來是JDBC幫你轉回來了
㈨ java中利用JDBC向MySql資料庫中插入中文出現亂碼,求解決辦法
你應該是安裝mysql的時候編碼你是選擇默認的吧。
你可以找到mysql的安裝目錄MySQL Server 5.0\bin\MySQLInstanceConfig.exe
重新配置下就可以了。一般選擇utf-8編碼。
再一個如果資料庫開始就建立好了。alter database 表名 character set utf8;
連接資料庫設置編碼
jdbc:mysql://地址:3306/資料庫名?characterEncoding=utf8
如果是windows的話
1、中止MySQL服務
2、在MySQL的安裝目錄下找到my.ini,如果沒有就把my-medium.ini復制為一個my.ini即可
3、打開my.ini以後,在[client]和[mysqld]下面均加上default-character-set=utf8,保存並關閉
4、啟動MySQL服務