我在做表的字段统计时,如果前几个字段都能正确输入,而后边的不能,如何通过代码将数据库恢复到以前。即前几个字段也不 输入到数据库里
问题表述不是太清楚,
不过看上去有点象是:
1、你用的是两层模式
2、你用的是直接对数据集的操作
3、操作的方式是:
ADO:LockType->ltOptimistic而非ltBatchOptimistic,
BDE:CachedUpdates->False而非True
使用数据库的事务处理方式,类似以下格式:
Db.StartTransaction; //开始事务
Tbl.Edit; //表数据修改
......
Tbl.Post; //表数据保存
Try //异常代码段,异常处理数据库事务提交
Db.Commit; //数据库事务提交,可以加其他代码控制提交条件
Except
Db.RollBack;
ShowMessage(数据库事物提交失败..);
end
不用能bookmark来实现,
如果你用BDE的话,请你用:
Database1.StartTransaction;
try
...//加在这儿
Database1.Commit; {on success, commit the changes};
except
Database1.Rollback; {on failure, undo the changes};
end;
如果你用ADO的话,请用:
ADOConnection1.BeginTrans;
ADOConnection1.CommitTrans;
ADOConnection1.RollbackTrans;