应用服务器采用ADO,客户端中利用ClientDataSet,代码如下
ClientDataSet1.Edit;
ClientDataSet1.FieldByName('name') := 'ddsd';
... ...
ClientDataSet1.Post;
ClientDataSet1.ApplyUpdates(0);试了好多,refresh等都不行,都不能在数据库中更新,借鉴了以前的帖子也不行,这是什么原因?很急的问

解决方案 »

  1.   

    ApplyUpdates(0);
    提交给中间层处理。
      

  2.   

    也可以用commandtext啊,
    先设datasetprovider的poallowCommandtext为true 
    with ClientDataSet2 do
    begin
       close;
       CommandText:='update 表 set Name=:Name where 条件';
       Params.ParamByName('Name').AsString:='haha';
       Execute;
    end;
      

  3.   

    ClientDataSet1.Edit;
    ClientDataSet1['name'] := 'ddsd';
    ... ...
    ClientDataSet1.Post;
    ClientDataSet1.ApplyUpdates(0);
      

  4.   

    要看你的clientdataset連的是什么。
      

  5.   

    楼主反delphi关闭掉,直接运行你编辑过的可执行文件,再更新数据就可以了
      

  6.   

    我的ClientDataSet连接的是DataSetProvider,在数据模块中采用ADOQuery。
    楼上介绍的方法怎么都不行啊!急啊
      

  7.   

    提交数据成功后,
    clientdataset.close;
    clientdataset.open;
    clientdataset.refresh;
      

  8.   

    ClientDataSet连接的数据集不能是视图或者是多表
    我想你不能更新的问题可能是出在这里