[SQL ] 如何將JSP+MySQL的編碼從Big5轉成utf8?!

看板Database作者 (Wade Lee)時間12年前 (2013/06/01 22:11), 編輯推噓3(3010)
留言13則, 6人參與, 最新討論串1/1
最近在做資料庫的報告 網頁是用jsp來寫的 用JDBC-ODBC連結到MySQL的資料庫 設定成utf8網頁顯示英文數字都是正常的 但是中文就會出現亂碼 但Big5全部都正常沒亂碼 我jsp檔前面都有加 <%@ page contentType="text/html; charset=utf8" import="java.sql.*"%> 檔案的編碼也是utf8 MySQL Connector/ODBC Driver的character set也設成utf8了 但只要是中文就都會是亂碼 該怎麼做才能以utf8正常的顯示呢? 感謝各位 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.136.211.19

06/02 02:20, , 1F
有檢查欄位編碼是什麼嗎?
06/02 02:20, 1F
CREATE TABLE `book` ( `bkid` char(7) NOT NULL, `bkname` varchar(50) NOT NULL, `Author` varchar(30) NOT NULL, `bkprice` int(8) NOT NULL, `publisher` varchar(30) NOT NULL, `pubdate` date NOT NULL, `ISBN` varchar(13) NOT NULL ) ENGINE=MyISAM DEFAULT CHARSET=utf8; 這是我創的table 照理說應該欄位都是utf8阿 ※ 編輯: watelee 來自: 49.158.8.164 (06/02 15:20)

06/02 19:44, , 2F
我問個問題,你把中文寫到db時,db下command看到的是什麼?
06/02 19:44, 2F

06/02 19:44, , 3F
這有兩個部份,讀出來亂碼還是寫進去亂碼
06/02 19:44, 3F

06/02 22:18, , 4F
寫進去都正常,用cmd看到的中文都正常,但是傳到jsp後用瀏覽
06/02 22:18, 4F

06/02 22:19, , 5F
器看就亂碼,但只有從DB傳來的中文會是亂碼,寫在jsp裡的中
06/02 22:19, 5F

06/02 22:20, , 6F
文就正常不是亂碼
06/02 22:20, 6F

06/02 23:15, , 7F
試看看直接用 java mysql driver 不要透過ODBC轉....
06/02 23:15, 7F

06/03 00:11, , 8F
剛剛改成了jsp檔裡面pagecontentType的charset=utf8,然後
06/03 00:11, 8F

06/03 00:13, , 9F
Mysql connector/ODBC 的Character set為Big5以後就正常了
06/03 00:13, 9F

06/03 00:14, , 10F
= =整個超納悶的,這是怎麼回事?
06/03 00:14, 10F

06/04 10:45, , 11F
創見DB時就需指定utf8
06/04 10:45, 11F

06/04 22:47, , 12F
oops 你用 windows 吧? windows 的charset是 MS950/BIG5
06/04 22:47, 12F

06/07 01:19, , 13F
如果是php的話可以考慮用iconv
06/07 01:19, 13F
文章代碼(AID): #1HgW4k6z (Database)