可以用个方法那就是建个表专门用来记录自已删除的、修改的、更新的记录,将要UNDO、REDO的SQL语句写在这个表中。 如: DELETE * FROM TABLE1 WHERE FIELD1="删除的条件" 那么UNDO 方法就是: 1、先保存删除记录前的数据。 "INSERT INTO UNDO_Table_For_Table1(SELECT * FROM table1 WHERE FIELD1="删除的条件")"记录删除前的数据. 2、写一条能UNDO的SQL语句. UNDO_SQL_For_Table1:的SQL为 INSERT INTO Table1(SELECT * FROM UNDO_Table_For_Table1 WHERE FIELD1="删除的条件") 再将UNDO的序号记录在UNDO_SQL_For_Table1中.3、恢复就找出最大的UNDO的序号的SQL语句 运行之.这个工程量很多.
如:
AdoDataSet1.UpdateBatch;数据更新
AdoDataSet1.CancelBatch;取消数据更新
如:
DELETE * FROM TABLE1 WHERE FIELD1="删除的条件"
那么UNDO 方法就是:
1、先保存删除记录前的数据。
"INSERT INTO UNDO_Table_For_Table1(SELECT * FROM table1 WHERE FIELD1="删除的条件")"记录删除前的数据.
2、写一条能UNDO的SQL语句.
UNDO_SQL_For_Table1:的SQL为
INSERT INTO Table1(SELECT * FROM UNDO_Table_For_Table1 WHERE FIELD1="删除的条件")
再将UNDO的序号记录在UNDO_SQL_For_Table1中.3、恢复就找出最大的UNDO的序号的SQL语句
运行之.这个工程量很多.