使用Microsoft SQL Server迁移助手进行访问,将Access数据库转换为MSSQL数据库

时间:2022-02-06 15:44:27

I am trying to convent a Ms Access Database to MS SQL 2012, using Microsoft SQL Server Migration Assistant for Access version 6.0 but each time i try to convert it an error pops up. any ideas how i can solve the problem i reinstall the program Microsoft SQL Server Migration Assistant for Access , and it worked just ones and after that i have the same error. any help will be most appreciated

我试图使用Microsoft SQL Server迁移助手为Access版本6.0修改Ms Access数据库到MS SQL 2012,但每次我尝试转换它时都会弹出一个错误。任何想法如何我可以解决问题我重新安装程序Microsoft SQL Server迁移助手访问,它只是工作,然后我有相同的错误。任何帮助将非常感激

Access Object Collector error: Database Retrieving the COM class factory for component with CLSID {CD7791B9-43FD-42C5-AE42-8DD2811F0419} failed due to the following error: 80040154 Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)). This error may be a result of running SSMA as 64-bit application while having only 32-bit connectivity components installed or vice versa. You can run 32-bit SSMA application if you have 32-bit connectivity components or 64-bit SSMA application if you have 64-bit connectivity components, shortcut to both 32-bit and 64-bit SSMA can be found under the Programs menu. You can also consider updating your connectivity components from http://go.microsoft.com/fwlink/?LinkId=197502. An error occurred while loading database content.

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

5 个解决方案

#1


6  

I remember this error. I had to find the EXE for 32-bit SSMA even though I was running 64-bit windows. The default installed location was:

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

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

C:\ Access SQL的Microsoft SQL Server迁移助手

And the filename was:

文件名是:

SSMAforAccess32.exe

SSMAforAccess32.exe

#2


6  

Just to complete the other side of the story...

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

If you have a 64-bit setup, you might have to go the other direction
and install the 64-bit MSAccess 2010 engine.

如果您具有64位设置,则可能必须转向另一个方向并安装64位MSAccess 2010引擎。

I'm running Access 2013, and I believe it is 64-bit. But the SMAA tool threw the 80040154 error.

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

  • I think SMAA can't or doesn't use the 64-bit connectivity drivers that come with 64-bit Access 2013.
  • 我认为SMAA不能或不能使用64位Access 2013附带的64位连接驱动程序。

So using the 32-bit SMAA didn't help.

所以使用32位SMAA并没有帮助。

  • Installing the 64-bit 2010 engine did.
  • 安装64位2010引擎了。

I got it as a free standalone download here:

我在这里免费下载了它:

After the quick install of this, I simply started
SMAA 64-bit again,
and the wizard was successful the first time.

快速安装后,我再次启动SMAA 64位,第一次向导成功。


thanks to : 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

感谢:https://social.technet.microsoft.com/Forums/itmanagement/en-US/0249eebf-14bd-45f6-9bca-3b42395a3d13/ssma-60-error-retrieving-the-com-class-factory-for -component失败的,因为到了跟随误差?论坛= sqlservermigration

#3


1  

with regards to installing the runtime environment of Access to get around the 80040154 error from SSMA: With Access 2016, I found that the runtime environment would not install because I already had Access installed. I needed to deinstall Access, then install the runtime only version. Then, SSMA would run without the 80040154 error. Total pain tho.

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

#4


0  

This worked for me. After I installed the Runtime Access 2010 and Started SSMA 7.0 the migration was successful. https://www.microsoft.com/en-us/download/details.aspx?id=13255

这对我有用。安装Runtime Access 2010和Started SSMA 7.0后,迁移成功。 https://www.microsoft.com/en-us/download/details.aspx?id=13255

#5


0  

[SOLVED]

[解决了]

I encountered the same error while using SSMA v7.7.0 for migrating from MS-Access 2016 DB to SQL Server 2017. Fortunately, I got it fixed by installing Microsoft Access Database Engine 2016 Redistributable

使用SSMA v7.7.0从MS-Access 2016 DB迁移到SQL Server 2017时遇到了同样的错误。幸运的是,我通过安装Microsoft Access数据库引擎2016 Redistributable修复了这个问题。

#1


6  

I remember this error. I had to find the EXE for 32-bit SSMA even though I was running 64-bit windows. The default installed location was:

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

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

C:\ Access SQL的Microsoft SQL Server迁移助手

And the filename was:

文件名是:

SSMAforAccess32.exe

SSMAforAccess32.exe

#2


6  

Just to complete the other side of the story...

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

If you have a 64-bit setup, you might have to go the other direction
and install the 64-bit MSAccess 2010 engine.

如果您具有64位设置,则可能必须转向另一个方向并安装64位MSAccess 2010引擎。

I'm running Access 2013, and I believe it is 64-bit. But the SMAA tool threw the 80040154 error.

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

  • I think SMAA can't or doesn't use the 64-bit connectivity drivers that come with 64-bit Access 2013.
  • 我认为SMAA不能或不能使用64位Access 2013附带的64位连接驱动程序。

So using the 32-bit SMAA didn't help.

所以使用32位SMAA并没有帮助。

  • Installing the 64-bit 2010 engine did.
  • 安装64位2010引擎了。

I got it as a free standalone download here:

我在这里免费下载了它:

After the quick install of this, I simply started
SMAA 64-bit again,
and the wizard was successful the first time.

快速安装后,我再次启动SMAA 64位,第一次向导成功。


thanks to : 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

感谢:https://social.technet.microsoft.com/Forums/itmanagement/en-US/0249eebf-14bd-45f6-9bca-3b42395a3d13/ssma-60-error-retrieving-the-com-class-factory-for -component失败的,因为到了跟随误差?论坛= sqlservermigration

#3


1  

with regards to installing the runtime environment of Access to get around the 80040154 error from SSMA: With Access 2016, I found that the runtime environment would not install because I already had Access installed. I needed to deinstall Access, then install the runtime only version. Then, SSMA would run without the 80040154 error. Total pain tho.

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

#4


0  

This worked for me. After I installed the Runtime Access 2010 and Started SSMA 7.0 the migration was successful. https://www.microsoft.com/en-us/download/details.aspx?id=13255

这对我有用。安装Runtime Access 2010和Started SSMA 7.0后,迁移成功。 https://www.microsoft.com/en-us/download/details.aspx?id=13255

#5


0  

[SOLVED]

[解决了]

I encountered the same error while using SSMA v7.7.0 for migrating from MS-Access 2016 DB to SQL Server 2017. Fortunately, I got it fixed by installing Microsoft Access Database Engine 2016 Redistributable

使用SSMA v7.7.0从MS-Access 2016 DB迁移到SQL Server 2017时遇到了同样的错误。幸运的是,我通过安装Microsoft Access数据库引擎2016 Redistributable修复了这个问题。