【问题标题】:Converting Access Database to MSSQL Database Using Microsoft SQL Server Migration Assistant for Access使用 Microsoft SQL Server Migration Assistant for Access 将 Access 数据库转换为 MSSQL 数据库
【发布时间】:2015-09-21 07:58:06
【问题描述】:

我正在尝试使用 Microsoft SQL Server Migration Assistant for Access 6.0 版将 Ms Access 数据库转换为 MS SQL 2012 但每次我尝试转换它时都会弹出一个错误。我如何解决问题的任何想法我都重新安装了 Microsoft SQL Server Migration Assistant for Access 程序,它只工作了一个,之后我遇到了同样的错误。 任何帮助将不胜感激

访问对象收集器错误:数据库 检索具有 CLSID {CD7791B9-43FD-42C5-AE42-8DD2811F0419} 的组件的 COM 类工厂失败,原因如下 错误:80040154 类未注册(HRESULT 异常: 0x80040154 (REGDB_E_CLASSNOTREG))。此错误可能是由于 将 SSMA 作为 64 位应用程序运行,而只有 32 位 已安装连接组件,反之亦然。您可以运行 32 位 SSMA 应用程序,如果您有 32 位连接组件或 64 位 如果您有 64 位连接组件,则 SSMA 应用程序,快捷方式 可以在“程序”菜单下找到 32 位和 64 位 SSMA。 您还可以考虑从 http://go.microsoft.com/fwlink/?LinkId=197502。 加载数据库内容时出错。

【问题讨论】:

  • 您是否进行了错误消息本身建议的 32/64 位检查?
  • 是的,我确实做了改变,有线的事情是它有效。只有一个

标签: sql sql-server database ms-access ms-access-2010


【解决方案1】:

只是为了完成故事的另一面……

如果您有 64 位设置,则可能需要另辟蹊径
并安装 64 位 MSAccess 2010 引擎。

我正在运行 Access 2013,我相信它是 64 位的。 但是 SMAA 工具抛出了 80040154 错误。

  • 我认为 SMAA 不能或不使用 64 位 Access 2013 附带的 64 位连接驱动程序。

因此,使用 32 位 SMAA 并没有帮助。

  • 安装了 64 位 2010 引擎。

我在这里免费下载了它:

快速安装后,我就开始了
SMAA 64 位,
并且向导第一次就成功了。


感谢: https://social.technet.microsoft.com/Forums/itmanagement/en-US/0249eebf-14bd-45f6-9bca-3b42395a3d13/ssma-60-error-retrieving-the-com-class-factory-for-component-failed-due-to-the-following-error?forum=sqlservermigration

【讨论】:

  • 信不信由你安装 2010 独立工具,修复了我在 Windows 10 上的 Access 2016 上的问题。
  • 这里的问题是,开发迁移工具的 MS SQL Server 开发人员从未在他们的系统上完整安装过 MS Access,因此他们引入了对仅随 MS Access 一起安装的组件的依赖关系运行时环境。
  • 这也对我有用。 Windows 10 64 位、SMAA 64 位、SQL server 2019 试用版 64 位?、Office Access 32 位、Microsoft Access 数据库引擎 2010 Redistributable 64 位
【解决方案2】:

我记得这个错误。即使我运行的是 64 位 Windows,我也必须找到 32 位 SSMA 的 EXE。默认安装位置是:

C:\Microsoft SQL Server Migration Assistant for Access\bin

文件名是:

SSMAforAccess32.exe

【讨论】:

  • 我们已经通过这种方法取得了成功,但 2010 运行时的安装对我们不起作用(我们的环境是 Windows 7 64 位、SQL Server 2014、Access 2013)。
【解决方案3】:

[已解决]

我在使用 SSMA v7.7.0 从 MS-Access 2016 DB 迁移到 SQL Server 2017 时遇到了同样的错误。幸运的是,我通过安装 Microsoft Access Database Engine 2016 Redistributable 解决了这个问题

【讨论】:

    【解决方案4】:

    关于安装 Access 的运行时环境以解决来自 SSMA 的 80040154 错误:使用 Access 2016,我发现运行时环境不会安装,因为我已经安装了 Access。我需要卸载 Access,然后安装仅运行时版本。然后,SSMA 将在没有 80040154 错误的情况下运行。总疼。

    【讨论】:

      【解决方案5】:

      如果您尝试通过 .NET 应用程序从/向 MS Access 数据库文件读取/写入数据,请尝试将项目切换到 x86 架构。对我有帮助

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-03-28
        • 1970-01-01
        • 2012-02-15
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-05-22
        • 1970-01-01
        相关资源
        最近更新 更多