我已将Access 2007数据库迁移到SQL Server 2008 R2后端,并使用链接表保留Access前端。一些用户的表现很好。
昨天,该应用程序向多个用户开放,下午表演进入了地狱。为前端打开或关闭,或做任何事情都花了几分钟。关闭的延迟似乎特别奇怪,因为它是通过主菜单上的一个按钮来完成的,该按钮只调用Application.Quit。什么都不做。
我发现旧的LDBView实用程序似乎适用于.laccdb文件。它显示11个用户登录,另外15个用户不再登录。它没有显示用户名,只显示了他们连接的机器名。大多数情况下,这些机器名称是两个虚拟主机,因此我不知道它们实际上是不同的用户还是多次报告的同一用户(对.laccdb文件的格式不够了解)。
我拿了一个麻烦的Access前端文件(.accdb文件)的副本,并从与原始文件相同的网络位置运行副本。它运行正常。因此问题似乎不在网络中,或在SQL Server数据库中,或者Access前端以某种方式损坏。
消除这些可能性,问题似乎与多个用户同时使用相同的Access前端有关。在将表迁移到SQL Server之前,原始Access数据库对于相同数量的用户工作正常。因此前端的基本设计似乎能够支持多个用户。
如何跟踪Access前端中的争用问题来源?对我来说,除了查看.laccdb文件中的并发用户数之外,似乎无法看到正在发生的事情。
顺便说一下,由于原始的Access数据库与多个用户一起工作正常,我被告知每个用户都无法拥有自己的Access前端副本,因为这将是一个维护噩梦。
答案 0 :(得分:2)
用户不应使用相同的前端副本。他们每个人都应该有自己的副本,他们可以保存在他们的个人驱动器中。
您保留自己的前端副本,对其进行修改,然后将其重新分发给用户,以替换旧版本。
共享一个前端副本是一个明确的禁忌。这是噩梦..并且是你遇到问题的最可能原因。