




下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、字號: 大大 中中 小小 mysql亂碼處理總結(1)java中處理中文字符正常,在cmd client中顯示亂碼是字符集的問題(2)字段長度設置夠長,但插入中文字符時提示data too long for column錯誤是字符集的問題(3)亂碼問題歸根到底是字符集的問題,那就從字符集設置方面考慮,不外乎下面幾個方面: server, client, database, connection, results.解決方法:方法一:(1)修改my.ini(MySQL Server Instance Configuration文件)#CLIENT SECTIONclient
2、port=3306mysqldefault-character-set=gbk#SERVER SECTIONmysqlddefault-character-set=gbk(2)修改data目錄中相應數(shù)據(jù)庫目錄下的db.opt配置文件default-character-set=gbkdefault-collation=gbk_chinese_ci(3)數(shù)據(jù)庫連接串中指定字符集URL=jdbc:mysql:/yourIP/college?user=root&password=yourPassword&useUnicode=true&characterEncoding=gbk
3、(4)在創(chuàng)建數(shù)據(jù)庫時指定字符集create database yourDB CHARACTER SET gbk;*要記得use database(5)在dos命令上要設置set names gbk 好了,經(jīng)過檢查上面四個方面的設置,應該 OK 了!不會出現(xiàn)諸如com.mysql.jdbc.MysqlDataTruncation: Data truncation: Data too long for column等問題. Mysql中文亂碼解決原來常常在群里看到mysql的亂碼問題,但是由于本人一直在用oracl
4、e和sql server所以沒多在乎,昨天用了用mysql結果就遇到了傳說中的亂碼.?,F(xiàn)在我們來講講mysql的亂碼問題。首先你進入的你mysql用show variables查看這里可以查看到你的字符集,character_set_server是服務器編碼?,F(xiàn)在我們默認的是latin1要改變服務器的編碼必須重新啟動服務器,我們先用mysqladmin uroot shutdown關閉服務器,然后mysqld C GBK啟動服務器 C是character_set_server的一個簡寫(可以也可以寫成mysqld character_set_server gbk).這樣修改以后我們再進入mys
5、ql查看就會顯示:這樣我們就把服務器和數(shù)據(jù)庫的編碼改為了GBK?,F(xiàn)在我們就可以插入中文字符串了,但是為什么有時間還是會顯示Exception in thread "main" com.mysql.jdbc.MysqlDataTruncation: Data truncation: Data too long for column 'name' at row 1這是因為你只是修改了mysql的服務器的字符編碼,并沒有修改已經(jīng)有數(shù)據(jù)庫的編碼,這時候你需要手動的把data目錄下的數(shù)據(jù)庫中的db.opt中的編碼改為default-character-set=gbkd
6、efault-collation=gbk_chinese_ci這樣修改以后你在重啟服務器就可以插入中文了。但是這時候還有個問題就是在你應用程序當中顯示的是中文字符,但是在命令窗口還是亂碼。這時候你注意我們上面圖中的character_set_client字符還是latin1當然顯示的是亂碼咯喲。所以你進入mysql客戶端程序的時候因該把客戶端默認的編碼改為gbk才能顯示正常。你可以在mysql里修改,也可以在登陸的時候mysql uroot default-character-set=gbk修改如此以來就解決了中文問題了。我剛開始的時候在程序中加入了一個characterEncoding變量(
7、下圖),但是想來想去都覺得這個變量沒什么用,所以后來去掉也能顯示正常。jdbc:mysql:/127.0.0.1:3306/ee?characterEncoding=gbk"總結下mysql的亂碼問題最好還是設置數(shù)據(jù)庫的時候就把服務器編碼和數(shù)據(jù)庫編碼都設置長gbk,還有就是注意查看系統(tǒng)變量。第一種方法,很精辟的總結:經(jīng)常更換虛擬主機,而各個服務商的MYSQL版本不同,當導入數(shù)據(jù)后,總會出現(xiàn)亂碼等無法正常顯示的問題,查了好多資料,總結出自己的一點技巧: WINDOWS 下導入應該這樣使用MYSQL的命令在DOS命令下進入mysql的bin目錄下,輸入mysql -uroot -p密碼
8、數(shù)據(jù)庫名稱<要恢復的數(shù)據(jù)庫, 例如我們要把D盤的一個名稱為test.sql的數(shù)據(jù)庫恢復到本地的test2這個數(shù)據(jù)庫,那么就這樣: mysql -uroot -p密碼 test2以前的國外主機用的Mysql是4.x系列的,感覺還比較好,都無論GBK和UTF-8都沒有亂碼,沒想到新的主機的Mysql是5.0版本的,導入數(shù)據(jù)后,用Php讀出來全是問號,亂碼一片,記得我以前也曾經(jīng)有過一次切換出現(xiàn)亂碼的經(jīng)驗,原因肯定是Mysql版本之間的差異問題。 只好查資料,發(fā)現(xiàn)了一個解決方法,就是在mysql_connect后面加一句SET NAMES UTF8,即可使得UTF8的數(shù)據(jù)庫消除亂碼,對于GBK的數(shù)據(jù)庫則使用SET NAMES GBK,代碼如下: $mysql_mylink = mysql_connect($mysql_host, $mysql_user, $mysql_pass); mysql_query("SET NAMES 'GBK'"); 數(shù)據(jù)庫字符集為utf-8 連接語句用這個 mysql_query("SET NAMES 'UTF8'"); mysql_query("SET CHARACTER SET UTF
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年貴州工貿職業(yè)學院單招職業(yè)適應性考試題庫一套
- 2025年廣東茂名農林科技職業(yè)學院單招職業(yè)技能測試題庫標準卷
- 2025年郴州職業(yè)技術學院單招職業(yè)技能測試題庫及答案參考
- 2025年常州紡織服裝職業(yè)技術學院單招職業(yè)適應性測試題庫附答案
- 2025年大連汽車職業(yè)技術學院單招職業(yè)技能考試題庫新版
- 2025年貴州護理職業(yè)技術學院單招職業(yè)技能考試題庫含答案
- 2025年貴州工業(yè)職業(yè)技術學院單招職業(yè)適應性考試題庫參考答案
- 2025年德州職業(yè)技術學院單招職業(yè)技能考試題庫及答案一套
- 2025年滄州醫(yī)學高等專科學校單招職業(yè)傾向性測試題庫標準卷
- 2025上海市住宅小區(qū)商鋪租賃合同(簡化版)
- DL-T 736-2021 農村電網(wǎng)剩余電流動作保護器安裝運行規(guī)程
- SB/T 10439-2007醬腌菜
- GB/T 33644-2017數(shù)控板料折彎機精度
- GB/T 32434-2015塑料管材和管件燃氣和給水輸配系統(tǒng)用聚乙烯(PE)管材及管件的熱熔對接程序
- GB/T 17888.3-2020機械安全接近機械的固定設施第3部分:樓梯、階梯和護欄
- 產品質量承諾及保障措施-產品質量承諾
- 高考語文文化常識之天文歷法課件
- 長短樁組合樁基礎的分析
- 《英語閱讀4》課程教案(下)
- 金壇區(qū)蘇科版二年級心理健康教育第1課《我喜歡我自己》課件(定稿)
- ava標準錄播教室應用解決方案
評論
0/150
提交評論