query1.eof 前面加query的名称!

解决方案 »

  1.   

    难道没人用ADOQUERY 做过主从表吗?
    这应该不是一个很难的问题啊!
      

  2.   

    这样,主表的插入代码为
      QueryMaster.Close;
      QueryMaster.SQL.Text := 'Select top 0 * from Master where 1=2';
      QueryMaster.Open;
      QueryMaster.Append;  QueryDetail.Close;
      QueryDetail.SQL.Text := 'Select top 0 * from Detail where 1=2';
      QueryDetail.Open;
    在从表的AfterInsert里写关系;
    procedure TMainTrarForm.QueryDetailAfterInsert(DataSet: TDataSet);
    begin
      DataSet.FieldByName('MainID').AsString := QueryMaster.FieldByName('MainID').AsString;
    end;
      

  3.   

    to qiubolecn(来自差生市) 
    这样完全不可行,速度太慢并且程序不好控制(如关键字,查找字段等)
    >>DataSet.FieldByName('MainID').AsString := QueryMaster.FieldByName('MainID').AsString;
    现在主表的ID还没定,要到存盘的一瞬间才能确定,此法不可行
      

  4.   

    难道没人用ADOQUERY做过主从表吗?这个问题应该不难啊
      

  5.   

    为什么不把主表的id定一下? = formatdatetime(...),用时间来控制不好么?这种速度是最快的。我一直都在用它;