在SSIS数据流组件中使用SQL Server Native Client 10时出现通信链接错误。
错误:SSIS错误代码DTS_E_OLEDBERROR。发生OLE DB错误。错误代码:0x80004005。OLE DB记录可用。源:"Microsoft SQL Server本机客户端10.0"结果:0x80004005描述:"通信链接失败"。OLE DB记录可用。源:"Microsoft SQL Server本机客户端10.0"结果:0x80004005描述:"TCP提供程序:指定的网络名称不再可用。
所以我从SQL Server Native Client 10更改为Microsoft OLEDB Provider for SQL Server,希望它能正常运行。这次得到了如下所示的错误:
[交易表1 [737]]错误:SSIS错误代码DTS_E_OLEDBERROR。发生OLE DB错误。错误代码:0x80004005。OLE DB记录可用。源:"用于SQL Server的Microsoft OLE DB提供程序"结果:0x80004005描述:"SQL Server上发生未指定的错误。连接可能已被服务器终止。"。
[交易表1 [737]]错误:SSIS错误代码DTS_E_INDUCEDTRANSFORMFAILUREONERROR。输入的OLE DB目标输入(750)"失败,因为发生错误代码0xC020907B,以及"input" OLE DB目标输入"上的错误行处置(750)""指定出错时失败。指定组件的指定对象上发生错误。在此之前可能会发布错误消息,提供有关故障的详细信息。
这两个供应商之间有什么区别?我应该使用哪一个?
4条答案
按热度按时间svgewumm1#
我在将一个新的
SSIS
项目发布到生产环境后遇到了这个问题。起初,我能够成功地验证包,但是当我试图执行包时,我收到了
DTS_E_OLEDBERROR. Error code: 0x80004005.
消息。我尝试在servername和password变量设置为sensitive的情况下验证包,但在本例中验证也失败了。
在将环境变量再次设置回非敏感并插入环境变量值之后,我能够验证和执行包。
在我看来,在某些情况下,
SSISDB
中的元数据似乎会损坏,但不幸的是,我还无法指出这个问题的根源。我希望这能帮助到一些人,在我最终得到这个(相当不满意的)解决方案之前,我已经经历了很多调试场景。
dsf9zpds2#
似乎必须解决此问题,您必须更改SQL Server代理服务启动帐户对Temp目录的权限。将读取权限和写入权限授予SQL Server代理的代理帐户。
http://support.microsoft.com/kb/933835
mo49yndu3#
我将连接更改为
Provider=SQLNCLI11.1
,并使用参数成功执行。b4lqfgs44#
这个模糊的错误也可能意味着一些良性的事情,比如OLE提供程序找不到预期的Excel工作表。
我最近在一个SSIS项目中遇到了这个错误,经过几个小时的努力,我认为是一些配置问题,结果是最终用户只是***更改了Excel数据源中的工作表名称***。
Microsoft消息传递FTW!