abchjb

导航

使用代码创建临时表

使用代码创建临时表
  代码如下:

  function CreateTableInMemory(const AFieldDefs:TFieldDefs):
  TDataSet;
  var TempTable:TClientDataSet;
  begin
   TempTable:=nil;
   Result:=nil;
   if AFieldDefs<>nil then
   begin
    try
     TempTable:=TClientDataSet.Create(Application);
     TempTable.FieldDefs.Assign(AFieldDefs);
     TempTable.CreateDataSet;
     Result:=(TempTable as TDataSet);
    Except
     if TempTable<>nil then TempTable.Free;
     Result:=nil;
     raise;
    end
   end
  end;

  在程序中按如下方法使用:

  procedure TForm1.Button1Click(Sender: TObject);
  var ADataSet:TDataSet;
  begin
   ADataSet:=TDataSet.Create(Self);
   with ADataSet.FieldDefs do
   begin
     Add(′Name′,ftString,30,False);
     Add(′Value′,ftInteger,0,False);
   end;
   with DataSource1 do
   begin
     DataSet:=CreateTableInMemory(ADataSet.FieldDefs);
     DataSet.Open;
   end;
   ADataSet.Free;
  end;

  临时表创建完成。

posted on 2004-04-19 13:40  忘我  阅读(680)  评论(0)    收藏  举报