....
stmt.executeUpdate("insert into zhang values('','你好')");
....插入到mysql的数据库中,再在mysql中显示为乱码?
请告诉我一个解决办法。
在这里,谢谢各位帮我的同道英雄了。

解决方案 »

  1.   

    stmt.executeUpdate(new String("insert into zhang values('','你好')".getBytes(),"iso-8859-1"));
      

  2.   

    在建立连接时,可以指定编码的,MySQL.url=jdbc:mysql://wwm/odcs?useUnicode=true&characterEncoding=Big5试试看!
      

  3.   

    wolfsquare的方法比较有通用性。
    这是内码的问题。
    最近正在看内码的转换,这个世界上有这么多内码,真是很讨厌。
      

  4.   

    这是Mysql的内码问题,和你用的Mysql版本相关,
    你需用mysql-connector-java-3.1.0或3.08然后建立联接时用MySQL.url=jdbc:mysql://wwm/odcs?useUnicode=true&characterEncoding=gbk或其它你可以
    CHARSET may be one of big5, cp1251, cp1257, czech, danish, dec8, dos, euc_kr, gb2312, gbk, german1, hebrew, hp8, hungarian, koi8_ru, koi8_ukr, latin1, latin2, sjis, swe7, tis620, ujis, usa7, or win1251ukr最主要是一定要有useUnicode=true,
    这样你定义的VARCHAR就可以输入中文了, wolfsquare(狼平方) 转换太麻烦了,
      

  5.   

    如果你用resin,那么好解决
    连接数据库时用:
    connUrl="jdbc:mysql://localhost/javalover_cxc_cc?user=javalover.cxc.cc&password=zsh001976&"+
    "useUnicode=true&characterEncoding=gb2312";
    在jsp文件头中用gb2312,即<%@ page contentType="text/html;charset=GB2312" %>。如果你是用tomcat,可以如下写
    连接数据库时用:
    connUrl="jdbc:mysql://localhost/javalover_cxc_cc?user=javalover.cxc.cc&password=zsh001976&"+
    "useUnicode=true&characterEncoding=ISO8859_1";
    在jsp文件头中用gb2312,即<%@ page contentType="text/html;charset=ISO8859_1" %>。
    如果你用到了bean,编译bean时要用ISO8859_1字符集。
      

  6.   

    stmt.executeUpdate( "insert   into   zhang   values( ' ', '你好 ') ");
    对于此等乱码问题,一般在简体中文前加'N'前缀可解决
    stmt.executeUpdate( "insert   into   zhang   values( ' ',N '你好 ') ");