1. 程式人生 > >java插入中文到Mysql中亂碼問題

java插入中文到Mysql中亂碼問題

在把資料庫對應的編碼【character_set_client/character_set_connection/character_set_database/character_set_server】都改成了utf8【具體修改方法可參照上篇博文】

用Java操作資料庫,插入中文欄位時後用select檢視,發現還是亂碼??........無語了。。忙了一整天了還是沒有搞定,忽然柳暗花明,看了百度知道的一位牛人解答,才終於解決。

       -------------------------------------------------------------------------------------------------------------------------

終極解決方案:

在Java中連線資料庫時就指定編碼型別:

               String url="jdbc:mysql://localhost:3306/資料庫名稱?characterEncoding=utf8";

再進行插入中文資料時不管是在Java中用select查詢還是在後臺查詢都能正常顯示。

然後再嘗試把資料庫對應的編碼

【character_set_client/character_set_connection/character_set_database/character_set_server】都改成了latin1,Java操作插入中文資料,能正常顯示。但是在後臺自己插入中文資料,用select查詢就是亂碼了。

       -------------------------------------------------------------------------------------------------------------------------

總結:

資料庫對應的編碼

1.【character_set_client/character_set_connection/character_set_database/character_set_

server】改成utf8,防止在後臺插入中文資料出現亂碼。

2.在建立資料庫連線時指定編碼可以防止用Java程式插入中文資料而出現亂碼。