Microsoft Access 开发的版本控制?
Posted
技术标签:
【中文标题】Microsoft Access 开发的版本控制?【英文标题】:Version control for Microsoft Access development? 【发布时间】:2010-02-12 17:48:41 【问题描述】:我们最近看到了这篇文章:
How do you use version control with Access development?
然后,我们根据该帖子中的示例编写了一个 .vbs 脚本来分解一个 .mdb MS Access 文件。
问题是,当我针对 .mdb 文件运行脚本时,出现错误:
decompose.vbs(71, 5) (null):Microsoft Office Access 无法打开数据库,因为它丢失或被其他用户以独占方式打开。
嗯,它没有丢失,也没有被其他用户打开。并且没有与之关联的锁定文件。
知道出了什么问题吗?
或者有没有更容易分解我们的 Access 数据库以便在我们的版本控制软件中使用?
【问题讨论】:
看不到代码的时候很难调试vbScript。 【参考方案1】:如前所述,Access mdb 或 accdb 本身并不是一个在版本控制下设置的好主意,因为它的二进制格式(无差异,无合并)。一旦有了单独的文件,您就可以使用任何版本控制系统,因为它们都能够处理文件。
Doug 发布的脚本仅提供代码的导出,这只是实现完整源代码控制/管理的一半。我推荐使用OASIS,它能够处理VBA源代码从Access到单个文件和v.v.的交换
作为版本控制系统,我首选的是Mercurial,但这当然取决于您的个人需求。周围还有Subversion 或Git 之类的,而且都是免费的。
【讨论】:
VSS 端到端处理 Access 文件,所以,你说的并不完全正确。 @David-W-Fenton:“端到端”是什么意思?我哪里弄错了? 您无需编写任何程序即可重建最新版本。 没错!我指的是 Doug 发布的链接 (accessmvp.com/Arvin/DocDatabase.txt),它只提供导出功能。我会澄清一下我的答案。【参考方案2】:就像 Cat Man Do 所说,您可以将 VSS 与开发人员工具一起用于源代码控制。如果您正在寻找更强大的源代码控制,您还可以使用 Team Foundation Server (TFS)。您需要安装 Team Foundation Server MSSCCI Provider 2010:http://visualstudiogallery.msdn.microsoft.com/bce06506-be38-47a1-9f29-d3937d3d88d6。
这将允许您从 Access 2007/2010 执行 TFS 签入/签出。
【讨论】:
【参考方案3】:来自文件头:
' 注释:使用未记录的 [Application.SaveAsText] 语法 '要重新加载,请使用语法 [Application.LoadFromText]
【讨论】:
【参考方案4】:我使用这个工具: https://github.com/joyfullservice/msaccess-vcs-integration
它都是开源的,用 Access 编写的。它像插件一样工作。您将一个模块添加到包含设置的数据库中。该模块包含加载版本控制库的代码,并在工具栏上添加按钮以进行代码导出。超级快速且易于使用。如果您对此有任何问题,可以在 Github 中提出问题。
【讨论】:
【参考方案5】:好的。
我的老板发现了这个: http://www.accessmvp.com/Arvin/DocDatabase.txt
它有效..
我们向 Access 应用程序添加了一个新宏并运行了新宏。
轰隆隆。
所有内容都写入我们的目录。
所以
【讨论】:
呃,这是您第二次发布此内容,并且您再次引用要在 Access 中运行的代码,而请求是从 VBScript 运行它。简而言之,Arvin 的代码很棒,但它只是开始为所述问题提供解决方案。以上是关于Microsoft Access 开发的版本控制?的主要内容,如果未能解决你的问题,请参考以下文章
使用 Microsoft Access ODBC 链接到 Oracle 控制哪些列成为主键
我可以同时安装两个版本的 Microsoft Access(2007 和 2013),以便我仍然可以打开 .adp 文件吗?
Microsoft Office Access数据库或项目包含一个对文件“dao360.dll”版本5.0.的丢失的或损坏的引用。