关于DBEdit控件的使用(100分)

  • 主题发起人 主题发起人 hermit
  • 开始时间 开始时间
H

hermit

Unregistered / Unconfirmed
GUEST, unregistred user!
在使用DBEdit进行数据库应用开发时,如何用较为简便的方法完成以下工作:
用户输入或修改后(用DBEdit实现输入,修改),检查输入的正确性.若输入不正确,则不提交,在修改时应恢复以前的内容.
总之,既要DBEdit自动从数据库中取出数据,又要由程序员控制提交,而不是纪录指针一移动就自动提交.

Thanks.
Hermit

 
chche update 模式
 
用事务处理吧(当然数据库要支持)
正确才提交,不正确就滚回。
 
对,AMO说得非常正确
Database1.TransIsolation:=tiDirtyRead;
Database1.StartTransaction;
if Form1.ShowModal=mrok then
Database1.Commit;
else
Database1.Rollback;

PARADOX都支持,更别说C/S库
 
最简单也是最笨的办法:
在dbedit.OnExit中判断. 如果数据非法则dbedit.undo
 
eyes: 咦? dbedit有undo吗? 我还从来没注意过. :-)
 
to LSS:
Paradox支持事务吗?
不会吧?
 
图简单的话,在移动纪录时,给个判断。如不符,则发出Cancel.
 
TO坏蟑螂:我敢说你肯定没有用过,试试看吧,它支持!!!
 
呵呵,我的更笨:
procedure btnPostClick(sender:tobject);
begin
if CheckData then
yourtable.post
else
yourtable.cancel//you also could show some message and
//DO NOT cancel, let user change it themselves
end;
 
感谢大家这么热心,大家的讨论给了我很多提示。我也看了一些例子,发现可以在
Table控件的OnPostError方法中处理这个问题。在次感谢大家,这就送出分数。
 
后退
顶部