用的是神州数码提供mas机器,往其中一个表中插入记录,就可以实现发送短信的功能,但是收到短信的手机上中文显示的是乱码,谢谢!有人说MySQLCommand commn = new MySQLCommand("set names gb2312", conn);但是我的MySQLCommand对象中strCmd字符串是 insert语句MySQLCommand(strCmd, (MySQLConnection)conn);

解决方案 »

  1.   

    提供一下
    show create table t1;
    show variables like 'char%';然后试下 set names 'gbk'; 在你query 之间。http://blog.csdn.net/ACMAIN_CHM/archive/2009/05/12/4174186.aspx
    MySQL 中文显示乱码
      

  2.   

    结果:
    character_set_client utf8
    character_set_connection utf8
    character_set_database latin1
    character_set_filesystem binary
    character_set_results utf8
    character_set_server latin1
    character_set_system utf8
    character_sets_dir /usr/share/mysql/charsets/ set names 'gbk'; 在你query 之间。     怎么加?
      

  3.   

    把你的MYSQL数据库准备要插入数据的那张表的字段设置为utf8
      

  4.   


    你的那个表的字符集是什么? show create table t1; 然后根据你表上的字符集设置,在你执行 select 语句前,同样象执行普通查询语句一样执行一下 "set names 'utf8'" (假设你的表上的字符集也是 utf8, 但估计不是。
      

  5.   

    show create table t1; 
    sms_outbox CREATE TABLE `sms_outbox` (
      `sismsid` varchar(50) NOT NULL,
      `EXTCODE` varchar(21) DEFAULT NULL,
      `DESTADDR` varchar(2000) NOT NULL,
      `MESSAGECONTENT` varchar(2000) NOT NULL,
      `REQDELIVERYREPORT` int(4) NOT NULL,
      `MSGFMT` int(4) NOT NULL,
      `SENDMETHOD` int(4) NOT NULL,
      `REQUESTTIME` datetime NOT NULL,
      `APPLICATIONID` varchar(16) NOT NULL,
      `ECID` varchar(20) DEFAULT NULL,
      PRIMARY KEY (`sismsid`)
    ) ENGINE=MyISAM DEFAULT CHARSET=gbk
      

  6.   

    ) ENGINE=MyISAM DEFAULT CHARSET=gbk
    所以你需要执行一下  set names 'gbk'