java.sql.SQLException: Incorrect string value: '\xCE\xB4\xC3\xFC\xC3\xFB...' for column 'name' at row 1 
以上是出错的信息
我最近做了一个上传文件,用的是jspSmartUpload包上传的,还是一个支持中文上传下载的包,我用getFileName()得到文件的名字,为什么只有上传的是数字和英文名字的文件才可以将文件的名字保存到数据库中,中文的话就会出现以上的错误信息,而且我在MYSQL里面直接写插入语句可以插入中文,请高手解答下。

解决方案 »

  1.   

    在QUERY前执行:
    set names 'Special character set'
      

  2.   


    http://topic.csdn.net/u/20071124/08/3b7eae69-ed1d-4a77-8895-9930bf3601af.html
      

  3.   

    加了还是不行呢,我把我的代码贴出来,你帮忙看看。
              byte[] b=fileName.getBytes();
     String name=new String(b, "gb2312");
     PreparedStatement pstmt1=con.prepareStatement("set names 'gb2312'");
     pstmt1.execute();
     pstmt=con.prepareStatement(insql);
     pstmt.setInt(1, tcount);
     pstmt.setString(2, name);
     pstmt.execute();
      

  4.   

    我现在可以插入数据了,原来是因为我建的表没有设定编码,谢谢你,可是我的数据存到数据库中都是???  郁闷  我的数据库的编码也是GBK