我的MSSQL配置:
Server version:         5.0.51b-community-nt MySQL Community Edition (GPL)
Server characterset:    utf8
Db     characterset:    utf8
Client characterset:    utf8
Conn.  characterset:    utf8而且直接用insert into table_name(name,password) value('汉字','aaa');时报错
ERROR 1366 (HY000): Incorrect string value: '\xCE\xD2' for column 
'table_name' at row 1;另外奇怪的是.我前台调用jsp网页网数据库中插入数据的时候(当然jsp网页中的charset我已经设为utf-8格式了)虽然能候成功的插入但是在数据库中显示的却是乱码(不是?),例如:'氓聲聤'.为什么?希望指教.....

解决方案 »

  1.   

    连接数据库的url好象也要设置成utf-8的
      

  2.   

    con=DriverManager.getConnection("jdbc:mysql://localhost:3306/myweb?useUnicode=true&characterEncoding=utf-8","root","root");
    楼上的是不是说这个地方?
      

  3.   

    对了,补充一下...昨天在网上找解决办法的时候,按照某为大大的方法已经可以实现在数据库中插入中文了..但是调用jsp网页往数据库中插入的时候数据库中得到的还是乱码...方法是在调用insert语句之前先mysql> set names gb2312;
    然后mysql> insert into table_name(name,password) value('汉字','aaa');
    就可以插入汉字了.....
      

  4.   

    不行啊,mysql> set name gb2312;
    ERROR 1193 (HY000): Unknown system variable 'name'
      

  5.   

    应该是mysql> set names gb2312;不是mysql> set name gb2312;注意!!!
      

  6.   

    你的数据库流和jsp中的数据流不一致引起的
    建议
    用new String转化一下
    例如jsp中的
    str="中国";
    存入时用
    insert into tablename('+new String(str.getBytes("gb2312"),"ISO-8859-1")+');
      

  7.   

    先mysql> set names gb2312; 
    然后mysql> insert into table_name(name,password) value('汉字','aaa'); 
    就可以插入汉字了.....
    正解,我就是这样解决的。
      

  8.   

    但是当我调用jsp页面向数据库中插入数据的时候还是不行...
    不管是写入数据库中的数据还是再调用回到jsp页面中的数据......
    超级郁闷中....
    被这个问题折腾了好几天了.....
      

  9.   

    又是编码问题。
    dos不支持gbk和gb2312.
    不能在cmd环境里输入。
    建议用工具。
    一切ok。