如题

解决方案 »

  1.   

    你用的mysql的版本是不是不太新啊,好像新的mysql已经能支持很多字符集了。
      

  2.   

    据说把中文转换成ISO8859-1字符集后写入数据库,读出来后再从ISO8859-1转换成中文就行了。
      

  3.   

    先执行一个SQL语句SET NAMES 'UTF8'。
      

  4.   

    我的mysql是5.0的,
    我把mysql下的my.ini文件的字符改写为gbk了的,
    用一个mysql的图形界面工具(SQLyogEnt.exe)打开,能显示中文的,
    但是我的ado的dbgrid还是不能,
    是不是要手动显示取出字符串字段后,再进行转换呢?
    那么该如何转换呢?有函数吗?
      

  5.   

    我从数据集取出来,但是不知道该怎么转换
    不知道getit911(Windows转Linux中) 老兄的是什么意思,可以详细点吗?procedure TForm1.Button1Click(Sender: TObject);
    var s:string;
        str:WideString;
        chstr:array [0..256]of byte;
        d:integer;
    begin
      str:=ADODataSet1.FieldByName('Name').AsVariant;
      s:=PWChar(str);
      FillChar(chstr,Length(chstr),0);
      strcopy(@chstr,PChar(s));
      s:=str;
      ShowMessage(s);
      TextOutW(Form1.Canvas.Handle, 0, 0, PWChar(str), Length(str));
    end;
      

  6.   

    我把my.ini文件的字符还原为utf8了