如何持续开发和部署 Access 2010 数据库应用程序
How to Continuously Develop and Deploy an Access 2010 Database Application
我一直在开发一个 Access 2010 数据库应用程序,我们称它为 Skill.accdb
。
我正处于想要开始部署它的阶段,以便用户可以开始使用它并同时继续开发。
我一直在阅读
- MSAccess-Deployment-Best-Practices,
- Deploy-an-Access-2007-application,以及
- Ways-to-share-an-Access-database
其中谈到了拆分、编译、安装等,但在要遵循的实际程序步骤上却非常简短。
我已将我的数据库应用程序拆分为后端和前端:Skill_Back.accdb
和 Skill_Front.accdb
。
后端位于网络共享驱动器上,一些用户拥有前端的副本。
到目前为止一切顺利,特别是如果我再也不需要做任何开发了。
但我不太明白现在如何在不干扰 "live" 后端的情况下继续开发前端。
如何让前端的开发版本指向后端的虚拟版本,以免弄乱实时版本?
然后,当我想发布一个新版本的前端时,如何让它再次指向后端的实时版本?
如果我重新拆分(即再次使用“移动数据 | 访问数据库”工具)以指向一个尚不存在的虚拟后端,我被告知所有表现在都是空的 -- 不是我想要的是。
如果我重新拆分以指向实时后端的副本,系统会询问我是否要替换它——这也不是我想要的。
如果我这样做,我再次被告知 "There are no tables in this database. The back-end database will be empty." 但我看到它(前端)仍然指向实时后端!
我错过了什么关键 concept/tool/procedure?
(我不是在问编译或运行时或构建安装程序——这些都是以后的问题。)
附录
为了进一步遵循下面很好的答案中的建议,我发现了其他几篇 描述程序的文章:
这不是网站,也不是文件;这是一个数据库。您无法在每个用户的计算机上更新前端的每个副本,那样做是行不通的。
我使用的策略是 "version" 我的前端,当我处理数据库时,我不使用 Access 的内置 Move Data
工具。
How do I have a development version of the front-end pointing to a
dummy version of the back-end so that I don't mess up the live
version?
您(至少)需要 2 个不同的环境
- 生产(您的用户使用什么)
- 测试(您进行更改并测试它们的地方)
对于测试,您需要 自己的 后端和前端。这是您进行持续开发的地方。您永远不想打扰您的用户正在使用的东西,尤其是数据。
对于生产,您可以通过共享网络驱动器进行更改并推出新版本,用户可以在其中下载副本,就像第一个一样。您将在此处使用 Linked Table Manager
将 table 重新连接到生产后端和新前端。
所以工作流程是:
- 您有用户正在使用的生产后端和前端。
- 您拥有这两个数据库的副本,并且与它们使用的内容无关。
- 您 link 您的前端 table 通过
Linked Table Manager
复制到您的 后端开发版本 。
- 您 change/make updates/continue 开发 您的 前端。
- 你测试them/ensure一切正常
- 您将新的生产前端版本 (v2) 放在共享网络驱动器上并将其连接到生产后端
- 您的用户下载(复制)新的前端版本并使用它。
- 他们看到了您所做的更改,并对您所做的感到惊讶,您因为知道该做什么并成为一名出色的开发人员而获得了 5,000.00 美元的加薪。
已链接 Table 经理
在导航窗格中,右键单击 linked table 之一以打开快捷菜单。从那里,选择链接 Table 管理器。
这样可以轻松管理 link。勾选您要更改的每个 linked table 旁边的框。或者,如果全部更改,请单击 Select ALL。还要选中标记为 "Always prompt for new location" 的框(在该对话框的左下角 window)。然后 Access 将要求您找到 links.
的数据库源
如果您需要更多信息,请直言。
从后端到前端链接新 Tables
如果我有一个带有 tables 的后端数据库并且我想 link 那些 tables 到我桌面上的前端,我会遵循这个过程:
- 单击 Access 功能区顶部的“外部数据”选项卡
- 点击访问
- Select 后端的正确文件 name/directory
- Select
Link to the data source by creating a linked table.
- Select你要导入的table(大概可以点击Select全部)
- 点击"OK"。
现在您将在前端看到 table。然后,您可以使用链接 Table 管理器来管理这些 link,例如,您的后端数据库应该移动到不同的位置。
我建议这样做:
文章引用了 Access 2003,但我已将其用于 Access 2010 数据库。本质上,创建一个 2010 编译的前端,并在启动时检查客户端版本是否与服务器版本匹配。如果它们不同,则将新的服务器版本复制到客户端的机器上。很漂亮。
我知道这是一个很老的问题,但我最近使用了一个超级简单的技术,可以对其他人有用。
为了部署,我将前端 (FE) 数据库(可以是 MDE、MDB 或 accdb,适用于任何类型)放在一个共享文件夹中,连同一个小的批处理文件,将 FE 复制到用户的%TEMP% 文件夹。
然后我只在每个用户的桌面上部署.bat 文件。
这样,每次用户启动应用程序时,都会在本地复制一个新的 FE 副本并启动。
对于升级,我只需要将新的 FE 放在共享文件夹中即可。这也消除了定期压缩 FE 的需要!
我一直在开发一个 Access 2010 数据库应用程序,我们称它为 Skill.accdb
。
我正处于想要开始部署它的阶段,以便用户可以开始使用它并同时继续开发。
我一直在阅读
- MSAccess-Deployment-Best-Practices,
- Deploy-an-Access-2007-application,以及
- Ways-to-share-an-Access-database
其中谈到了拆分、编译、安装等,但在要遵循的实际程序步骤上却非常简短。
我已将我的数据库应用程序拆分为后端和前端:Skill_Back.accdb
和 Skill_Front.accdb
。
后端位于网络共享驱动器上,一些用户拥有前端的副本。
到目前为止一切顺利,特别是如果我再也不需要做任何开发了。
但我不太明白现在如何在不干扰 "live" 后端的情况下继续开发前端。
如何让前端的开发版本指向后端的虚拟版本,以免弄乱实时版本? 然后,当我想发布一个新版本的前端时,如何让它再次指向后端的实时版本?
如果我重新拆分(即再次使用“移动数据 | 访问数据库”工具)以指向一个尚不存在的虚拟后端,我被告知所有表现在都是空的 -- 不是我想要的是。 如果我重新拆分以指向实时后端的副本,系统会询问我是否要替换它——这也不是我想要的。 如果我这样做,我再次被告知 "There are no tables in this database. The back-end database will be empty." 但我看到它(前端)仍然指向实时后端!
我错过了什么关键 concept/tool/procedure? (我不是在问编译或运行时或构建安装程序——这些都是以后的问题。)
附录
为了进一步遵循下面很好的答案中的建议,我发现了其他几篇 描述程序的文章:
这不是网站,也不是文件;这是一个数据库。您无法在每个用户的计算机上更新前端的每个副本,那样做是行不通的。
我使用的策略是 "version" 我的前端,当我处理数据库时,我不使用 Access 的内置 Move Data
工具。
How do I have a development version of the front-end pointing to a dummy version of the back-end so that I don't mess up the live version?
您(至少)需要 2 个不同的环境
- 生产(您的用户使用什么)
- 测试(您进行更改并测试它们的地方)
对于测试,您需要 自己的 后端和前端。这是您进行持续开发的地方。您永远不想打扰您的用户正在使用的东西,尤其是数据。
对于生产,您可以通过共享网络驱动器进行更改并推出新版本,用户可以在其中下载副本,就像第一个一样。您将在此处使用 Linked Table Manager
将 table 重新连接到生产后端和新前端。
所以工作流程是:
- 您有用户正在使用的生产后端和前端。
- 您拥有这两个数据库的副本,并且与它们使用的内容无关。
- 您 link 您的前端 table 通过
Linked Table Manager
复制到您的 后端开发版本 。 - 您 change/make updates/continue 开发 您的 前端。
- 你测试them/ensure一切正常
- 您将新的生产前端版本 (v2) 放在共享网络驱动器上并将其连接到生产后端
- 您的用户下载(复制)新的前端版本并使用它。
- 他们看到了您所做的更改,并对您所做的感到惊讶,您因为知道该做什么并成为一名出色的开发人员而获得了 5,000.00 美元的加薪。
已链接 Table 经理
在导航窗格中,右键单击 linked table 之一以打开快捷菜单。从那里,选择链接 Table 管理器。
这样可以轻松管理 link。勾选您要更改的每个 linked table 旁边的框。或者,如果全部更改,请单击 Select ALL。还要选中标记为 "Always prompt for new location" 的框(在该对话框的左下角 window)。然后 Access 将要求您找到 links.
的数据库源如果您需要更多信息,请直言。
从后端到前端链接新 Tables
如果我有一个带有 tables 的后端数据库并且我想 link 那些 tables 到我桌面上的前端,我会遵循这个过程:
- 单击 Access 功能区顶部的“外部数据”选项卡
- 点击访问
- Select 后端的正确文件 name/directory
- Select
Link to the data source by creating a linked table.
- Select你要导入的table(大概可以点击Select全部)
- 点击"OK"。
现在您将在前端看到 table。然后,您可以使用链接 Table 管理器来管理这些 link,例如,您的后端数据库应该移动到不同的位置。
我建议这样做:
文章引用了 Access 2003,但我已将其用于 Access 2010 数据库。本质上,创建一个 2010 编译的前端,并在启动时检查客户端版本是否与服务器版本匹配。如果它们不同,则将新的服务器版本复制到客户端的机器上。很漂亮。
我知道这是一个很老的问题,但我最近使用了一个超级简单的技术,可以对其他人有用。
为了部署,我将前端 (FE) 数据库(可以是 MDE、MDB 或 accdb,适用于任何类型)放在一个共享文件夹中,连同一个小的批处理文件,将 FE 复制到用户的%TEMP% 文件夹。
然后我只在每个用户的桌面上部署.bat 文件。
这样,每次用户启动应用程序时,都会在本地复制一个新的 FE 副本并启动。
对于升级,我只需要将新的 FE 放在共享文件夹中即可。这也消除了定期压缩 FE 的需要!