无法将Access DB导入SQL Server迁移助手以进行访问(32位)



我正在64位Windows计算机中尝试使用32位SQL Server迁移助手(SSMA(将32位MS Access DB迁移到SQL Server。由于以下错误,向迁移项目添加Access DB总是失败。错误消息建议使用我已经在使用的32位版本的SSMA。可能出了什么问题?

访问对象收集器错误:数据库

由于以下错误,检索CLSID为{CD7791B9-43FD-42C5-AE42-8DD2811F0419}的组件的COM类工厂失败:80040154类未注册

(HRESULT中的异常:0x80040154(REGDB_E_CLASSNOTREG((。请确保您使用的是正确版本的SQL Server迁移助手。

如果安装了32位Microsoft Access,则需要使用32位版本的迁移助手。

为了使用64位版本的迁移助手,您需要安装64位Microsoft Access组件,这些组件位于https://go.Microsoft.com/fwlink/?linkid=834402.

加载数据库内容时出错

最好的做法是安装ACE数据引擎。

安装Access的最新版本将不起作用!甚至是最近的运行时验证!

自Access 2013以来,Access full(或运行时(的安装不会安装ACE的公开副本。由于这种混乱,他们正在推翻这一政策,但由于这种混乱的情况,并且在几年内安装Access(完整版或运行时版(将不起作用?

然后直接去安装ACE数据引擎。无论如何,它是一个比Access运行时更小、更轻的安装。

因此,请使用此链接:Microsoft Access Database Engine 2016 Redistributable

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

因此,请记住,为最后几个版本安装Access没有也没有安装ACE的公开副本。您必须安装ACE引擎,以便与VB6、vb.net、c#或外部软件(如SSMAA(分开使用,这些软件需要ACE数据引擎的公开副本。虽然微软正在推翻这一决定(Access完整版或运行时版会暴露ACE(,但目前的情况令人困惑,因为你可以尝试安装几个版本的Access,甚至运行时版,但仍然无法获得ACE的公开副本。

进行快速搜索;是否安装了正确的Access Runtime?

查看下面的链接:

https://techcommunity.microsoft.com/t5/microsoft-data-migration/access-connection-components-for-ssma/ba-p/391070

他们建议从2016年开始,看看它是否有效;如果没有,请卸载运行时并尝试早期版本。

最新更新