我在java程序中,使用jdbc连接,向数据库中插入数据,为什么当插入的数据是汉字的时候是乱码呢?

解决方案 »

  1.   

    更改Mysql的默认字符集
    进入mysql 查看一下 mysql>\s
    可以看到  server characterset :latin1
              db     characterset :latin1
    我们修改一下字符集在 winnt 目录中找到 my.ini 文件 在mysqlld 后面加入default-character-set=gb2312
    [client]
    default-character-set=gb2312ok
      

  2.   

    你也可以在插入數據庫之前先傳碼
    String str="漢字";
    str = new String(str.getBytes("ISO8859_1"), "gb2312");
      

  3.   

    在建表的时候,characterset选用GBK, 在程序里连接数据库的时候,URL设为:
         private String sourceURL="jdbc:mysql://localhost/test?      useUnicode=true&characterEncoding=utf-8";           就行了