向數據庫中存入數據,中文亂碼問題
阿新 • • 發佈:2019-04-24
pan tables database conn ini文件 system 技術 錯誤 default
問題發現:這裏拿eclipse創建hibernate為例(其他類型往數據庫存值亂碼問題都大差不差),用hibernate往數據庫存值出現亂碼後:
辦法:(最好就是所有開發工具全部統一編碼格式)
1.開發工具默認字符編碼是否是UTF-8。
如eclipse
2.數據庫的字符集編碼格式是否是utf-8
開啟mysql數據庫 ,命令行 show variables like ‘character%‘;
如何修改了,一個是修改my.ini文件
[mysqld] port = 3306 basedir=D:/software/javaee/mysql //這裏一定註意一定用/,如果用\可能剛開始安裝時候正常使用,只要重新開機啟動mysql就可能報1067錯誤,特別是放在c盤以外註意 datadir=D:/software/javaee/mysql/data max_connections=200 character-set-server=utf8 default-storage-engine=INNODB sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES [mysql] default-character-set=utf8
第二種,命令行,不推薦使用
mysql> set character_set_client=utf8 ; mysql> set character_set_connection=utf8 ; mysql> set character_set_database=utf8 ; mysql> set character_set_database=utf8 ; mysql> set character_set_results=utf8 ; mysql> set character_set_server=utf8 ; mysql> set character_set_system=utf8 ;
重啟服務器 命令行net start mysql 讓它重啟
如果還是不行,還亂碼,註意加載連接路徑時候數據庫名後面加上
jdbc:mysql://localhost:3306/hibernate_crm?useUnicode=true&characterEncoding=UTF8
這樣在連接道路上指定其編碼格式
向數據庫中存入數據,中文亂碼問題