java鏈接了mysql數據庫後,程序行向數據庫中插入信息,代碼以下:php
dbhelper boringdb = new dbhelper(); boringdb.connSQL(); String insert = "insert into boring(prflurl,name,post,school,reside) values('www.地址地址f','csdn','好無聊啊','家裏蹲大學','北京')"; if (boringdb.insertSQL(insert) == true) { System.out.println("insert successfully"); }
數據庫中插入的數據爲亂碼like this:??????都是問號
直接使用命令窗口(cmd小黑窗)或者phpmyadmin用sql語句進行插入操做卻沒有問題,不亂碼html
因而搜索解決辦法網頁連接java
按照辦法是:要先在cmd中mysql> show variables like 'character%';
mysql
發現。。都不太同樣有latin1的有gbk的。。因而按照文章所說須要:sql
咱們看到,儘管使用數據庫時咱們可以正常的添加和顯示中文,可是在使用程序鏈接數據庫時並不可以正常顯示中文,爲此咱們須要修改MySQL的默認編碼,編輯my.ini(MySQL配置文件)文件對編碼進行修改
設置MySQL的默認字符集爲utf8,找到客戶端配置[client]在下面添加。
default-character-set=utf8 找到服務器配置[mysqld]在下面添加
default-character-set=utf8 設定MySQL數據庫以utf8編碼運行,鏈接MySQL數據庫時使用utf8編碼
中止和從新啓動MySQL net stop mysql net start mysql數據庫
然額,這麼操做以後,mysql啓動不了了。。不了了。。了
因而再次百度發現:MySQL 5.5版本解決中文亂碼問題時my.ini內[mysqld]項中不能再寫default-character-set=utf8
[#0x004E] MySQL 5.5版本上my.ini內[mysqld]項中不能再寫default-char服務器
在5.1版本時,爲了解決中文亂碼問題設置默認字符集爲utf8時,在my.ini內的
[mysql] 和 [mysqld] 項中都是寫: default-character-set=utf8 到了5.5版本, [mysql]
項內能夠這麼寫, [mysqld] 項內這麼寫在啓動MySQL服務時會有1067錯誤,經查詢發現這裏必需要這樣寫:
character-set-server=utf8
ide
原來是個人mysql版本過高(5.6),這招已經很差使了,要更新換代
最後果真圓滿解決*^-^*
post