私は最近、Java と mysql を使って仕事をすることにうんざりしています。問題は、mysql データベースを持っていることです。1 つの表に、中国の都市名を示す列があります。ある同僚が、すべての文字 (接続、データベース、結果、サーバー、およびシステム) のデータベースを utf8 に変更しました。その結果、%character% を latin1 に戻した場合にのみ、変更前のデータが正しく表示されなくなりました。どちらの文字セットでも、データの半分しか正しく取得できません。問題を解決する方法を教えてください。問題を解決するためにJavaを使用しようとしましたが、うまくいきません。
String sql = "SELECT * FROM customer_addresses";
ResultSet result = query.executeQuery(sql);
while (result.next()) {
byte b[] = result.getBytes("city");
c = new String(result.getBytes("city"), "UTF-8");
}
For example: there is one city in db like this ä¹Œé²æœ¨é½å¸‚
the java print: 乌�?木�?市
it should be:乌鲁木齐市
前もって感謝します