我目前正在一家大公司工作。我工作的小组支持一个相当复杂的Access DB,它包含大量数据,并且有40多种形式。我们遇到了一个问题,没有人(甚至不是兽医)都能弄明白。我被要求在互联网上搜索任何信息,但甚至找不到任何有类似问题的人。
问题在于:
一点前(读:在我到这里之前),公司从Access 03升级到07.一切都很好。我到达时的第一个任务是插入一段代码来记录哪个用户正在修改不同的DB(因为删除了mdw)。这很顺利,我们将整个过程投入生产。 几天后,我们收到了第一个电话,“帮助!我一直收到错误,无法访问数据库!”错误是'此数据库中的VBA模块似乎已保存错误等等'。我们显然有腐败问题。有趣的是,当我们进入表单的代码时,除了每个表单顶部的“Option compare DB”之外,它都已消失了。所以我们有40多种形式,所有人都说,而没有别的。 我们重新提升备份,没什么大不了的。 两天后,同样的事情。重新备份。 这种情况发生了几次。不只是同一台机器上的同一个用户。但是,没有发生在我身上,也没有发生在我的导师身上。 然后我们认为问题可能是我们使用新代码导入表单的方式,因此我们安装了备份,并逐个复制表单。 第二天,同样的问题。 到目前为止,我们认为它必须是我们添加的五行代码(谁知道原因),所以我们只使用旧备份运行,没有任何更改。 现在已经有两周了,没有问题。直到今天早上。一个特定的用户昨天发生了四次这种情况(不是其他人)。
有人听说过这样的事吗?可能是什么问题?我确信有各种各样的可能性,我相信我没有提供足够的信息来缩小范围,但我不知道还有什么要写(从来没有使用过大型Access应用程序)。
我显然很难过,但与我合作的所有聪明的兽医也是如此。
编辑** 为清楚起见:所有形式的视角都非常好。我可以打开它们,它们看起来绝对正常,只是没有后端代码......
答案 0 :(得分:2)
每个用户都应该有自己的前端,消失代码是一个损坏问题,如果用户不是每个都有自己的前端,那么你将失去拆分数据库的所有优点。您可以获得额外的保护,将前端编译为accde或mde文件。
对每个拥有自己副本的人来说,通常的论点是,开发人员很难保持各种副本的同步,但有几种解决方案可以自动向用户推出更新,例如Tony Toews的这个: http://autofeupdater.com/