用户与后端失去连接时如何强制关闭Access应用程序

时间:2019-04-24 19:11:53

标签: vba ms-access access-vba

问题: 有什么方法可以强制关闭访问权限,从而不需要退出后端服务器就可以退出吗?

情况: 我有一个Access 2016数据库。后端位于网络共享驱动器上,该驱动器仅在连接到局域网或VPN时才可访问。加载时对服务器执行ping测试,如果发现该测试会将表复制到本地表,否则,它只是告诉用户无法连接并继续使用旧数据。用户经常出差很多,并且不能总是使用VPN,因此其想法是他们拥有的数据不会超过几天。顺便说一句,我是否提到用户只是信息的使用者,而不是提供者,所以我不在乎他们不会写到后端。这些表包含几十万条记录,该应用程序将其置于易于搜索和交叉引用的报告中。

问题: 尽管无论它们是否连接到局域网,它都能很好地加载和运行,但是如果他们没有与服务器的连接,它将不会关闭。它不会产生我可以轻松处理的错误,而只是挂起。任务管理器甚至都不会关闭它。

尝试的解决方案: 我试图取消链接表,只是在开始需要它们时使用一个临时连接到后端来加载表,但是这意味着用户每次加载此文件时,Microsoft信任中心都会提示用户大约8次,除非我让他们每个人实际上都自己打开后端数据库,并给他们提供密码,而这都不可行。

2 个答案:

答案 0 :(得分:0)

Access不能与远程BE一起很好地使用..如果要通过Access进入远程端,则有两个选择:

  • 通过RDS连接..用户通过远程桌面连接到服务器..一切都是“本地的..so”,因此现在出现丢失连接问题...只要RDP连接保持一切顺畅,更重要的是,您不会不会出现会导致损坏或数据丢失的断开连接(提示:使用RemoteApp技术,最终用户似乎会觉得他/她在本地工作……我正在使用它,而且效果很好)
  • 切换BE ...如我所说,通过远程连接使用Access BE是不明智的。为了做到这一点,切换到MsSQL / MySQL / PostGre ... etc将为您提供真正的远程连接功能

答案 1 :(得分:0)

在使用所有设置几天后,我终于弄清楚了我的问题所在。 为了测试不同的设置以查看是否可以一次减小文件大小,我在“当前数据库”设置中启用了“退出时清除缓存”。关闭此功能可解决此问题。我已经忘了那件事,所以事实证明这毕竟不是编程问题。