with DataModule.DataModule1.ClientDataSet1 do
  begin 
close;
              CommandText :='insert into [oplimit] (opname) values (:opname)'             
              Params.ParamValues['opname']:='用户xx2';
execute;
end;插入成功,但数据库里面只有'用户x‘几个字符。我所有的表单都是这个问题,插入中文的时候只能插入5个字符,插入英文字母没有任何问题!!困扰我好几天了,神呀,救救我吧!!

解决方案 »

  1.   

    已经很大了,不爽数据表的问题。好像是delphi的bug。所有的插入中文情况都是这样的
      

  2.   

    你换一种写法吧
    with DataModule.DataModule1.ClientDataSet1 do
     begin 
      close;
      CommandText :='insert into [oplimit] (opname) values (''用户xx2'')'             
      execute;
    end;
    这样试试
      

  3.   

    ADWARDS00(大拇指):你那样就可以。但是加参数就不行了,大家怎么看这个问题?我所有表单都有这样的中文问题。
      

  4.   

    呵.一年前我还花时间从VCL中追踪这问题.这是个BUG..不过一下子忘了怎么处理.
    先关注.
      

  5.   

    别人说,是因为SQL的格式转换的问题!我不太清楚!
      

  6.   

    好像加的空格数跟汉字的个数有关,这样做也不是长久之方法。都delphi7了,都1年了,Borland怎么还没有解决这个问题?
      

  7.   

    http://www.csdn.net/Develop/article/18%5C18720.shtm这篇文章分析得不错。。