mysql> show variables like '%char%';
+--------------------------+----------------------------------------------------| Variable_name            | Value
   
+--------------------------+----------------------------------------------------| character_set_client     | gb2312
     |
| character_set_connection | gb2312
     |
| character_set_database   | gb2312
     |
| character_set_filesystem | binary
     |
| character_set_results    | gb2312
     |
| character_set_server     | gb2312
     |
| character_set_system     | utf8
     |
| character_sets_dir       | C:\Program Files\MySQL\MySQL Server 5.0\share\chars
ets\ |
+--------------------------+----------------------------------------------------8 rows in set (0.31 sec)首先将mysql数据库上的字符集设置成上面那样,其次你把数据写进mysql的时候不要转成iso-8859-1再写进去,而应该是转成gb2312写进去才对,读出来也一样。
String name =new String(name.getBytes("ISO-8859-1"),"GB2312");