[通过ADO使用Click2Run / SxS MS Access DBMS时,如何访问数据库对象?

问题描述 投票:0回答:1

根据我们的经验,在进行任何MS Office SxS安装或更新后,非C2R MS Access DBMS安装似乎会中断。在2007年,2010年和2016年就已经看到了这一点。我们没有尝试2013年。要使该应用程序再次运行,我们需要修复正在使用的MS Access安装。

目前,我们仅使用32位提供程序。我们一直在使用DAO数据库对象执行数据库重组。

考虑迁移到Click2Run MS Access 2019,我尝试改用它,但发现DBEngine在C2R“气泡”之外不可用。我看不到可以实例化或要求现有数据库实例的方法。这是一个问题,因为这样数据库重组将无法进行。

当通过ADO使用Click2Run / SxS MS Access DBMS时,如何访问数据库对象以能够使用DAO来重组数据库?

ms-access dao ms-access-2016 side-by-side
1个回答
0
投票

您只需要从此处安装ACE引擎:

https://www.microsoft.com/en-us/download/details.aspx?id=54920

但是,如果您想知道这是如何工作的?

嗯,区分Access相当重要。 Access是vb.net或FoxPro之类的开发人员工具。它允许您编写代码,并使用您选择的数据库中的数据。

所以Access既不是数据库也不是数据库。我的意思是,如何使用SQL Server创建表单和用户界面?你不能!!

几件事:

直到Access 2010:如果安装Access系统,则它还将安装数据库引擎的一个版本(以前称为JET,但现在称为ACE)。

那么,安装Access开发系统,甚至Access运行时?它将安装,注册并公开ACE数据库引擎的副本。

因此,您可以在第三方工具中使用ACE数据库引擎。 (例如VB6,或说vb.net/ c#.net)。

现在,对于Access 2013和2016?很好,默认情况下,由于大多数Office安装都是C2R,因此它们还更改了安装2013和2016的方式,它们不公开ACE数据引擎的外部副本。

对于2019年,由于一般开发人员社区有些困惑?好了,他们现在重新介绍了安装Access(完整版或运行时)的方式已回到过去。

过去安装Access的同时还安装了ACE的EXPOSED副本。

因此,对于2019年,这种长时间的设置已经恢复(甚至对于C2R)。

就像整个社区都习惯了这种新设置一样,我们现在回到过去的样子!

具有自包含且未公开的ACE副本具有一些相当不错的优势。一个很大的优点是您现在可以安装其他版本的ACE-包括x32和x64的混合版本。

因此,将Access作为开发工具安装这些年来不应该同时暴露ACE数据库引擎。由于许多人现在将Access与SQL Server甚至SharePoint一起使用,因此情况尤其如此。因此,现在Access不是数据库。甚至是具有100万行数据的sql表的绑定形式? Access是智能的,如果您使用“ where”子句中内置的标准打开表单,Access只会提取一条记录。我注意到了这个问题,因为再次,Access不是数据库。它是一个用来构建应用程序的系统,并且具有诸如代码,报表以及用来构建应用程序的用户界面之类的东西。

一旦选择Access,然后选择数据库,而不必是ACE

确定,以上所有内容都很清楚。

要使用ACE数据库引擎?只需安装它。使用此链接:https://www.microsoft.com/en-us/download/details.aspx?id=54920

如前所述,对于2019年,安装Access时返回的ACE +在安装Access时公开。但是,之间:

因此,我们具有用于Access 2010的4个版本:Access X32-完整版Access x32-运行时版本Access x64-完整版访问x64-运行时版本。

对于Access 2013,我们有8个版本。

Access x32-完整版-MSIAccess x32-运行时版本-MSIAccess x64-完整版-MSII访问x64-运行时版本。 NSI

Access x32-完整版-点击率Access X32-运行时版本-CTRAccess x64-完整版-点击率访问x64-运行时版本。点击率

所以,什么将行不通。而要安装的版本正在成为各种可能性的巨大矩阵。

底线:如果您需要ACE供外部第三方使用?然后安装ACE引擎,不要费心安装Access或假定Access将安装ACE的公开副本。]

我可以在20页上写更多有关选项的信息,以及您可以选择或不能使用的版本。但是如果有8个版本,则叙述会相当大。无论如何,您暂时不能假定已安装的Access将安装ACE的公开副本。

因此,暂时,您必须安装ACE。

随着时间的流逝,我们将回到过去的工作方式,尤其是这种情况,因为MSI版本的Office变得非常难以罚款或获取。您不得不选择C2R,并且从物理介质(甚至下载)安装MSI已成为过去。

© www.soinside.com 2019 - 2024. All rights reserved.