Microsoft Access:运行“安全”模式(即允许还原更改)

时间:2013-08-02 02:22:54

标签: ms-access transactions ms-access-2010 undo revert

我正在使用Microsoft Access作为管理数据(以前以电子表格形式存储)的一种方式,以更表格,有序和逻辑的方式。一切似乎都对我的客户有用,但她有一个问题:“是否有模式允许更改被还原?让我说我做了一些更改,我想要恢复原来的版本,可能吗?“

我理解她的担忧,并且我想说“这就是数据库的工作原理;你对行进行了更改,然后立即将它们写入行”,我可以不要自言自语。她一直在使用MS Excel,Excel可以撤消多个更改,如果还没有保存,还可以恢复原始文件。对我来说,我觉得她害怕Access会带来灾难性的后果 - 有一天她有点昏昏沉沉,并开始随意改变,然后她无法取回原始文件。 的Bam

我现在要问的是:是否有任何方式/设置允许Access不立即提交更改,可能直到用户点击了某个按钮或什么?这不是Access的工作方式,请不要让我回到旧的Excel,因为我喜欢并欣赏Access的寒冷WYSIWYG界面及其熟悉的数据库环境。也许只是这个行为,它与数据库一起出现。

1 个答案:

答案 0 :(得分:0)

如果您正在寻找一个简单的设置来保存历史记录,或者启用撤消或强制所有更改都封装在显式事务中,那么您就不幸了,因为Access不会提供任何开箱即用的功能。

然而,有一些方法可以在不同程度上实现所有这些功能,从simple confirmation whenever the records are about to be changed创建所有更改的日志(以便用户至少可以看到更改的内容),以便在它们出现之前复制记录修改等

撤消操作可能很简单,比如恢复刚刚键入的值,但如果要撤消在数据库中其他位置创建或修改其他十几条记录的操作,则可能会很快变得非常毛茸茸。 如果在那之后执行了其他操作(例如,由连接到数据库的其他用户),则变得特别困难。

但是,有些事情可以帮到你:

  1. 您可以跟踪表单中的所有更改并记录操作的日志(在另一个表中或只是文本文件中):

  2. 您可以使用Access 2010 data macros在更新或添加到数据库时自动触发某些操作(如复制记录或跟踪更改)。

  3. 您可以在未绑定模式下使用所有表单,并在表单打开(或更改记录)时手动设置数据,并在用户完成时仅将其保存回数据库。

  4. 所有这些方法都需要工作和测试,需要根据您希望为用户提供的体验进行调整。

    你可以做的另一件事就是定期将数据库副本作为备份,这样,如果出现问题,你没有丢失所有内容(无论如何,这是强制性的,我总是至少有一个日常的备份系统)。