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



根据我们的经验,在进行任何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来重构数据库?

您只需从这里安装ACE引擎:

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

然而,如果你想知道这到底是怎么回事?

好吧,区分Access非常重要。Access是一个类似于vb.net、FoxPro或其他开发工具的开发工具。它允许您编写代码,并使用您选择的数据库中的数据。

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

所以有几件事:

Access 2010之前:如果您安装了Access系统,那么它还会安装数据库引擎的一个版本(以前称为JET,但现在称为ACE)。

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

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

现在,对于Access 2013和2016?默认情况下,由于大多数办公室安装都是C2R,他们还更改了在安装2013和2016时不公开ACE数据引擎的外部副本。

对于2019年,由于一些混乱的一般开发者社区?他们现在重新介绍了安装Access(完整版或运行时)现在又回到了过去。

过去安装Access也安装了ACE的EXPOSED副本。

因此,在2019年,这种长期设置已经回归(即使是C2R)。

就在整个社区都习惯了这种新设置的时候,我们现在又回到了过去!!

拥有一个独立且不公开的ACE副本有一些非常好的优势。一个很大的优势是,您现在可以安装不同版本的ACE,包括x32和x64的混合版本。

因此,安装Access作为developer9rs工具不应该这么多年也暴露了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年,ACE的安装+安装Access时暴露的返回正在重新调整。但是,介于:

因此,我们有access 2010,4个版本:Access x32-完整版Access x32-运行时版本Access x64-完整版Access x64-运行时版本。

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

Access x32-完整版-MSIAccess x32-运行时版本-MSIAccess x64-完整版-MSIIAccess x64-运行时版本。NSI-

Access x32-完整版-CTRAccess x32-运行时版-CTRAccess x64-完整版-CTRAccess x64-运行时版本。CTR-

那么,什么会起作用,什么不会起作用。安装什么版本正成为一个巨大的可能性矩阵。

底线:如果您需要ACE供外部第三方使用?然后安装ACE引擎,不要麻烦安装access或假设access将安装ACE的公开副本)。

我可以再写20页关于选项的内容,以及你可以混合或不能混合的版本。但有了8个版本,叙事将相当庞大。无论如何,就目前而言,您不能假设已安装的Access将安装ACE的公开副本。

因此,就目前而言,您必须安装ACE。

随着时间的推移,我们将回到过去的工作方式,尤其是这种情况,因为MSI版本的office变得非常难以精细化或获得。你不得不选择C2R,MSI从物理媒体(甚至下载)安装已经成为过去。

最新更新