我把dataprovider的option设为了poAllowCommandText了,怎么老说“cann't perform on an open adodataset”?有没有其它方法改变服务器端的数据集?
如果有,请大侠们写详细一点吧!!谢谢了!

解决方案 »

  1.   

    自己写方法或函数供客户端调用,客户端只传递SQL,
    在应用服务器端执行SQL,改变服务器端的数据集
      

  2.   

    中间层完成,客户端对接口操作,可以用ClientDataSet,ReQuest.
      

  3.   

    对不起,如果是直接用TClientDataSet ,我看是无法实现的。
      

  4.   

    用以下四个控件:TADOConnection;连你的库
    TClientDataSet;Providername=TDataSetProvider;
    TDataSetProvider; dataset=TADODataSet;
    TADODataSet;Connection=TADOConnection;通过改变TClientDataSet的CommandText连接表,如果TADODataSet.CommandText='',还能
    通过TClientDataSet.CommandText访问不同的表
      

  5.   

    我没有遇到你的问题,直接改变Server端的DataProvider中Options poAllowCommandtext为true ;
    而且运行正常
      

  6.   

    服务器上的数据集应该是关闭的, 开发的时候,不要把设置为ACTIVE=TRUE,应该为FALSE
      

  7.   

    open adodataset,你注意一下这个,你可能是在这的问题
      

  8.   

    要動態傳sql語句﹐中間層的adoquery不要打開