使用ADO连接database,用了clientdataset和datasourse控件,将其两个互联,为什么会提示:missing dataset property.
谁告诉我为什么
使用ADO连接database,用了clientdataset和datasourse控件,将其两个互联,为什么会提示:missing dataset property.
只有datasourse有dataset属性,并且是设置正确的。为什么我设置clientdataset的active为true的时候会提示这个?它没有dataset属性啊

解决方案 »

  1.   

    CDS里面有记录集么?
    var
      vData :OleVariant;
      sSql:string;
    begin
      if (not qryData(sSql,vData)) then //执行查询  返回vData
      begin
        ...
      end;
      cds.Data := vData;  //这时候cds的Active 属性肯定是True了end;
      
      

  2.   

    你可能没有指定数据源别名...
    改用这几个控件....
    ADOCconnetion+ADOQuery+datasoure+dbgrid
      

  3.   

    :) 多看看书啊;
    你放一个ADOConnection1  ADOQuery1  DataSource1 DBGrid1设置ADOConnection1属性:connectionstring  根据向导设置你要连的库
    设置ADOQuery1属性:connection
    设置SQL属性:写点SQL语句比如(select * from tablename)
    设置DataSource1属性:DataSet 
    设置DBGrid1属性:DataSource设置Active属性:True
    ----------------------------
    这时候你应该在DBGrid1能看到你(select * from tablename)查询出来的数据了
    ----------------------------
    然后你可以加四个按钮  Add Mod Del Cancel  进行简单的增删改 撤消
      

  4.   

    object dcomconnsvr: TDCOMConnection
      Connected = True
      LoginPrompt = True
      ServerGUID = '{54A9A586-4516-404F-BADF-07BE4B8B4D76}'
      ServerName = 'server.rdmserver'
      ComputerName = 'eigerdb'end
    object Session1: TSession
      Active = True
      AutoSessionName = Trueend
    object cdslogin: TClientDataSet
      Aggregates = <>
      Params = <>
      ProviderName = 'dsplogin'
      RemoteServer = dcomconnsvrend
    object dslogin: TDataSource
      DataSet = cdsloginend
    我再说详细一点,我这是在写CS结构的客户端程序,这4个控件是放在新的DateModule里边的,设置的属性就如上面的,但我总感觉少点什么东西使他找不到数据源。但是你们看到第三个控件有个remoteserver属性吗?说明是连到一个adoconnection上的,所以应该不会的,我没弄过,请大家不吝指教,谢谢