例如: 有2 个access数据库文件,分别是 db1.mdb,db2.mdb , 他们都有一个表, 表
名为"T1" , 分别在于db1.mdb库的t1表是有记录的,但db2.mdb库的t1表是空的,
adodataset1控件打开db1.mdb库的t1表adodataset2控件打开db2.mdb库的t1表adodataset1,adodataset2分别打开t1表后,怎样把adodataset1的记录快速地转到 adodataset2控件中并保存!
我试过下面代码:procedure TForm1.Button1Click(Sender: TObject);
begin
adodataset2.Recordset:= adodataset1.Recordset ;
adodataset2.edit;
adodataset2.Post;end; 在adodataset2连接的dbgrid已经看到adodataset1的数据 ,但不能保存!
名为"T1" , 分别在于db1.mdb库的t1表是有记录的,但db2.mdb库的t1表是空的,
adodataset1控件打开db1.mdb库的t1表adodataset2控件打开db2.mdb库的t1表adodataset1,adodataset2分别打开t1表后,怎样把adodataset1的记录快速地转到 adodataset2控件中并保存!
我试过下面代码:procedure TForm1.Button1Click(Sender: TObject);
begin
adodataset2.Recordset:= adodataset1.Recordset ;
adodataset2.edit;
adodataset2.Post;end; 在adodataset2连接的dbgrid已经看到adodataset1的数据 ,但不能保存!
var
tName: TStrings;
begin
tName := TStringList.Create;
acStore.GetTableNames(tName, false);
if tName.IndexOf('t1') >= 0 then
acStore.Execute('drop table t1');
acStore.Execute('select * into t1 from t1 in ' + QuotedStr(ExtractFilePath(Application.ExeName) + 'db2.mdb'));
MessageBox(self.Handle, '数据已成功导入为t1', '提示', mb_IconInformation + mb_Ok);
tName.Free;
end;导出:
acStore.Execute('select * into t1 in ' + QuotedStr(ExtractFilePath(Application.ExeName) + 'db2.mdb') from t1');