如何防止访问数据库在打开时修改和保存自身?

How do I prevent the access database from modifying and saving itself upon open?

在使用 Access .accdb 时,每次打开文件时,我都会看到文件系统中的 'date modified' 变为现在。这让我很紧张。我想让它停止。

我不可能是唯一一个曾经保存过工作数据库并在几周或几个月后打开它时出错的人。当然,我可能有备份,备份到我的备份,table 数据与我的代码分开保存,版本历史记录占用了数 GB 的文件系统或电子邮件或任何地方......但它仍然使我当我有一段时间没有接触数据库时,每当我看到打开的修改日期更新时,我的心都会跳一下。

我是否在某处拨动了一个开关使其能够执行此操作?这是预期的行为吗?我该如何阻止它?

要复制它,请创建一个新的 accdb,保存并关闭。在里面放点东西,什么都没有,或者在创建它后一秒钟就关闭它。打开保存 accdb 的目录的 windows 资源管理器,并记下修改日期值。在显示的文件修改日期后至少一分钟打开文件。 alt-tab 返回资源管理器 window,您会看到修改日期已更改。

这是默认行为,即使使用本机 Access MDB 文件也是如此。它们不像普通文件那样工作,您必须显式修改才能更新日期 - 当您打开它时,无论您是否愿意,它都会做一些事情。

刚刚做了一个快速测试 - 如果您将数据库文件设置为只读,它不会自行更新。

我将我的 MS Access 应用程序构建为前端和后端。前端数据库由所有应用程序对象组成,例如查询、表单、报告和模块。后端数据库由表和到其他数据源的链接组成。

许多人认为这是 Microsoft Access 公认的最佳实践。

Microsoft 提供了一个向导来为您进行拆分。 Shown here

10 Reasons to Split an Access Database

一旦数据库被拆分,它就变得更易于管理了。前端可以标记为只读。后端保持可写。