缓存更新关于记录修改的问题(200分)

  • 主题发起人 主题发起人 perfic
  • 开始时间 开始时间
P

perfic

Unregistered / Unconfirmed
GUEST, unregistred user!
使用缓存更新修改记录时,如果不是直接在数据库控件上进行修改,怎样做?
例如,
我选定一个记录后,在另一窗体上用edit进行修改,
修改后返回到主form,调用applyupdate才提交.
如果是insert的话,可以用insertrecord.
用dbedit的话,也可以实现,但控制不方便.
用sql语句的话,不知怎样做到缓存更新.
请大虾们指教,救命.
 
用UpdateSql组件配合TQuery
 
什么意思,能详细些吗.
我现在用的是dbedit.但只要退出当前的edit,就做了修改,
要取消只能把所有的更改roolback,而且password之类的不好控制
反正就不方便.不用dbedit还有什么方法
 
C/S数据库是否和本地数据库用的顺序一样
先打开表再修改在提交,提交之后是否表被自动关闭?
 
全是废话,或不知所云.
 
新增,用INSERTRECORD,更新用SETFIELDS。
 
下边的答案,不知适合你吗?

Permanently stores updates, insertions, and deletions of data associated with the current transaction, and ends the current transactions.


The following procedure illustrates how to apply a dataset抯 cached updates to a database in response to a button click:

procedure TForm1.ApplyButtonClick(Sender: TObject);

begin
with CustomerQuery do
begin
Database1.StartTransaction;
try
ApplyUpdates; {try to write the updates to the database};
Database1.Commit; {on success, commit the changes};
except
Database1.Rollback; {on failure, undo the changes};
raise; {raise the exception to prevent a call to CommitUpdates!}
end;
CommitUpdates; {on success, clear the cache}
end;

end;
 
多人接受答案了。
 
后退
顶部