如果是不同结构的数据库同步的话 那一般就要在你自己的程序中实现了 如:读取第一个数据库中符合条件的记录 然后把这些记录提交到数据库2中, 如果中间出了问题,那就回滚事务,取消更新 大致的代码如下:procedure TAccountDefForm.PostUpdate; begin if (SysQuery.State = dsEdit) or (SysQuery.State = dsInsert) then SysQuery.Post; if not DataModule1.ADOConnection1.InTransaction then DataModule1.ADOConnection1.BeginTrans; try {read data from database1} {wtrite data to query :LogQuery} LogQuery.UpdateBatch();//Update Data DataModule1.ADOConnection1.CommitTrans; // Commit except on e:Exception do begin ShowMessage(e.Message); DataModule1.ADOConnection1.RollbackTrans; end; end; end;
請問如何用出發器功能呢?
那一般就要在你自己的程序中实现了
如:读取第一个数据库中符合条件的记录
然后把这些记录提交到数据库2中,
如果中间出了问题,那就回滚事务,取消更新
大致的代码如下:procedure TAccountDefForm.PostUpdate;
begin
if (SysQuery.State = dsEdit) or (SysQuery.State = dsInsert) then
SysQuery.Post;
if not DataModule1.ADOConnection1.InTransaction then
DataModule1.ADOConnection1.BeginTrans;
try
{read data from database1}
{wtrite data to query :LogQuery}
LogQuery.UpdateBatch();//Update Data
DataModule1.ADOConnection1.CommitTrans; // Commit
except
on e:Exception do
begin
ShowMessage(e.Message);
DataModule1.ADOConnection1.RollbackTrans;
end;
end;
end;