我多年来一直通过 DAO 使用 MS Access 数据库,但我觉得我应该接受更新的技术。
我的主应用程序在最终用户 PC(无服务器)上运行,并使用动态创建和更新的共享数据库。当应用程序第一次运行时,它会检测到数据库的缺失并创建一个新的空数据库。
允许运行该应用程序的任何本地用户在此共享数据库中添加或更新记录。我们还有其他几个共享数据库,其中包含模板、区域信息等,但这些不是由应用程序直接更新的。
应用程序的更新会不时发布,每次新更新都会检查主数据库版本,并在必要时执行代码以使数据库达到最新规范。这可能涉及表和/或列的创建或删除。模板数据库的新副本也包含在更新中。
我们的用户不需要具备计算机知识,也不需要运行任何类型的数据库管理软件,而不仅仅是应用程序提供的那些设施。
这一切都与 DAO/Access 一起工作得很好,但我正在努力寻找如何使用 SQL Express 来做到这一点。数据库似乎被隐藏在用户特定的位置,并且数据库创建和更新似乎充其量只能通过程序代码来完成。
我遇到了一些“Xcopy 部署”的引用,看起来很有希望,但似乎有一些对“用户实例”的引用听起来可疑地像是未共享的东西。我很感激任何做过的人的建议。