ClientDataSet1.ProviderName可不可以动态的改变呢?
好像从一个变为另一个总是要出错呀?

解决方案 »

  1.   

    应该这样用
    ADOQuery1.Close;
    ADOQuery1.SQL.Clear;
    ADOQuery1.SQL.Add('select * from 表2')
    ADOQuery1.Open;( 或 ADOQuery1.Active := True;)
      

  2.   

    ClientSet1.close;
    ClientSet1.datarequest('select * form 表1)
    Clientset1.open;ClientSet1.close;
    ClientSet1.datarequest('select * form 表2)
    Clientset1.open;
      

  3.   

    把adoquery1里的sql清掉,用客户端来指定sql语句
    ClientSet1.close;
    ClientSet1.DataRequest('select * from 表1');
    ClientSet1.open;ClientSet1.close;
    ClientSet1.DataRequest('select * from 表2');
    ClientSet1.open;服务器端出路DataSetProvider的OnDataRequest事件:ADOQuery1.Close; 
    ADOQuery1.SQL.Clear; 
    ADOQuery1.SQL.Add(Input)
    ADOQuery1.Open;( 或 ADOQuery1.Active := True;)