插入时用的是GB2312字符集 
那在SELECT显示时也应该用GB2312

解决方案 »

  1.   

    一、不知道你用的是什么版本的mysql,我现在用的是mysql4.0和mysql5.0   
      mysql4.0安装时不需要选择编码,默认的内核编码是:GBK   
      而mysql5.0安装时需要选择编码,我当时安装的时候没有记清mysql的内核编码,我就选了gb2312   
        
      这两个我现在用起来都正常,   
        
      二、还有不知道你的jsp中连接mysql的语句是如何写的?   
        
      1、String   url="jdbc:mysql://localhost/"+dbName+"?user="+userName+"&password="+userPasswd   +   "&useUnicode=true&characterEncoding=gb2312";   
          Class.forName("com.mysql.jdbc.Driver").newInstance();   
        
      2、String   url="jdbc:mysql://localhost/"+dbName+"?user="+userName+"&password="+userPasswd;   
          Class.forName("com.mysql.jdbc.Driver").newInstance();   
        
      这两种方式连接我上面的两种mysql中文都显示正常,我把characterEncoding=gb2312改为characterEncoding=8859_1中文反而显示乱码。   
        
      三、jsp页面顶部要加上   
              <%@   page   contentType="text/html;   charset=gbk"   language="java"     import="java.sql.*"   %>   
        
      四、连接mysql的驱动程序的版本不同,也可能产生乱码,我连接上面两种版本的mysql的驱动是:   
              mysql-connector-java-3.2.0-alpha-bin.jar   
              可以到http://www2.tw.freebsd.org/pub/MySQL/Downloads/Connector-J/下   
              mysql-connector-java-3.2.0-alpha.zip   
            解压后找到mysql-connector-java-3.2.0-alpha-bin.jar复制到你的应用程序的WEB-INF\lib文件夹下即可
      

  2.   

    <%@   page   contentType="text/html;   charset=gbk"   language="java"     import="java.sql.*"   %>   
      

  3.   

    jay_lishijie(会飞的死鱼)
    ==============================按你写的修改了以后就报Data too long for column 'xxx'不知道是怎么回事,我用的是5.0的jar包
      

  4.   

    看看这个
    http://bbs.chinaunix.net/archiver/?tid-702672.html
      

  5.   

    就冲jay_lishijie(会飞的死鱼)老兄的这个乐于助人的精神,不管我的问题能不能解决,先给老兄分再说,谢了jay_lishijie(会飞的死鱼)兄。