未注册所请求的OLE DB提供程序Microsoft.ACE.OLEDB.12.0.如果未安装64位驱动程序,请以32位模式运行程序包 [英] The requested OLE DB provider Microsoft.ACE.OLEDB.12.0 is not registered. If the 64-bit driver is not installed, run the package in 32-bit mode

查看:544
本文介绍了未注册所请求的OLE DB提供程序Microsoft.ACE.OLEDB.12.0.如果未安装64位驱动程序,请以32位模式运行程序包的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试在执行SSIS包的SQL Server Management Studio中运行作业. SSIS包将数据从excel文件复制到数据库.

I'm trying to run a job in SQL Server Management Studio that executes a SSIS package. The SSIS package copies data from an excel file to a database.

我安装了64位版本的Microsoft Access数据库引擎( https://www.microsoft.com/zh-cn/download/details.aspx?id=13255 ).当我尝试自行运行SSIS程序包时(通过数据工具,而不是作为作业),它显示有关未注册ACE.OLEDB的错误.将SSIS包作为作业运行时,我遇到了相同的错误.

I installed the 64-bit version of Microsoft Access Database Engine (https://www.microsoft.com/en-us/download/details.aspx?id=13255). When I tried to run the SSIS package by itself (through Data Tools, not as a job) it displayed an error about ACE.OLEDB not being registered. I got the same error when running the SSIS package as a job.

我卸载了64位版本并安装了32位版本.当我自己运行SSIS程序包时,它可以工作.
当我尝试将软件包作为作业运行时,出现以下错误:

I uninstalled the 64-bit version and installed it's 32-bit counterpart. It works when I run the SSIS package by itself.
When I try to run the package as a job I get the following error:

请求的OLE DB提供程序Microsoft.ACE.OLEDB.12.0不是 挂号的.如果未安装64位驱动程序,请在 32位模式"

"The requested OLE DB provider Microsoft.ACE.OLEDB.12.0 is not registered. If the 64-bit driver is not installed, run the package in 32-bit mode"

我编辑作业步骤,转到执行选项",然后勾选使用32位运行时"框.
在方框中打勾并运行作业时,出现以下错误:

I edit the job step, go to 'execution options' and tick the 'use 32 bit runtime' box.
When the box is ticked and I run the job I'm getting the following error:

发生了一个OLE DB错误.错误代码:0x80004005.一个OLE DB 记录可用.来源:"Microsoft Access数据库引擎" 结果:0x80004005说明:未指定的错误".

"An OLE DB error has occurred. Error code: 0x80004005. An OLE DB record is available. Source: "Microsoft Access Database Engine" Hresult: 0x80004005 Description: "Unspecified error".

我还尝试安装ACE.OLEDB的JET.OLEDB,但是没有任何效果.
我可以单独运行SSIS程序包,但是当我尝试在SQL Server Management Studio中将其作为作业步骤运行时,根据是否勾选了32位框,我总是会遇到上述两个错误.

I also tried installing JET.OLEDB instaed of ACE.OLEDB but nothing works.
I can run the SSIS package by itself but when I try to run it as a job step in SQL Server Management Studio I always get the two errors mentioned above depending on whether the 32 bit box is ticked or not.

推荐答案

事实证明,用于运行作业的代理帐户没有正确的权限.

It turns out that the proxy account which was used to run the job didn't have the right permissions.

https://support.microsoft.com/en-us/kb/933835

这篇关于未注册所请求的OLE DB提供程序Microsoft.ACE.OLEDB.12.0.如果未安装64位驱动程序,请以32位模式运行程序包的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆