首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >包部署错误-将连接字符串更改为SQLNCLI10或查找和安装对SQLNCLI.1的支持?

包部署错误-将连接字符串更改为SQLNCLI10或查找和安装对SQLNCLI.1的支持?
EN

Stack Overflow用户
提问于 2014-01-15 23:38:11
回答 1查看 20K关注 0票数 6

我试图在SQL server代理下运行一个包。大多数错误消息表明,我必须将连接字符串更改为SQLNCLI10,或者查找和安装对SQLNCLI.1的支持。

我需要知道这个错误的意义。它是像安装一个驱动程序和注册它一样简单,还是它不仅仅是驱动程序。这个问题是否有与司机无关的原因?我更改了错误中提到的提供程序,现在我得到了新的错误,这些错误是在第一个错误之后给出的。

谢谢。

全错误-

代码语言:javascript
复制
Code: 0xC0209302     Source: MyPackage Connection manager "MyOleDBConnection"     Description: SSIS Error Code DTS_E_OLEDB_NOPROVIDER_ERROR.  The requested OLE DB provider SQLNCLI.1 is not registered. 
Error code: 0x00000000.  An OLE DB record is available.  Source: "Microsoft OLE DB Service Components"  Hresult: 0x80040154  Description: "Class not registered".  
End Error  

Code: 0xC020F42A     Source: MyPackage Connection manager "MyOleDBConnection"     Description: Consider changing the PROVIDER in the connection string to SQLNCLI10 or 
visit http://www.microsoft.com/downloads to find and install support for SQLNCLI.1.  
End Error  

Code: 0xC020801C     Source: MyPackage Log provider "SSIS log provider for SQL Server"     Description: SSIS Error Code DTS_E_CANNOTACQUIRECONNECTIONFROMCONNECTIONMANAGER.  
The AcquireConnection method call to the connection manager "MyOleDBConnection" failed with error code 0xC0209302.  
There may be error messages posted before this with more information on why the AcquireConnection method call failed.  
COM error object information is available.  Source: "MyPackage"  error code: 0xC0209302  
Description: "Consider changing the PROVIDER in the connection string to SQLNCLI10 or 
visit http://www.microsoft.com/downloads to find and install support for SQLNCLI.1.  ".  
End Error  

Code: 0xC0209302     Source: MyPackage Connection manager "MyOleDBConnection"     Description: SSIS Error Code DTS_E_OLEDB_NOPROVIDER_ERROR.  
The requested OLE DB provider SQLNCLI.1 is not registered. Error code: 0x00000000.  
An OLE DB record is available.  Source: "Microsoft OLE DB Service Components"  Hresult: 0x80040154  Description: "Class not registered".  
End Error  

Code: 0xC020F42A     Source: MyPackage Connection manager "MyOleDBConnection"     Description: Consider changing the PROVIDER in the connection string to SQLNCLI10 or 
visit http://www.microsoft.com/downloads to find and install support for SQLNCLI.1.  
End Error  

Code: 0xC020801C     Source: DFT Insert Execution Log OLE_DST Insert SSIS Execution Log [25]     Description: SSIS Error Code DTS_E_CANNOTACQUIRECONNECTIONFROMCONNECTIONMANAGER.  
The AcquireConnection method call to the connection manager "MyOleDBConnection" failed with error code 0xC0209302.  
There may be error messages posted before this with more information on why the AcquireConnection method call failed.  
End Error  

Code: 0xC0047017     Source: DFT Insert Execution Log SSIS.Pipeline     Description: component "OLE_DST Insert SSIS Execution Log" (25) failed validation and returned error code 0xC020801C.  
End Error  

Code: 0xC004700C     Source: DFT Insert Execution Log SSIS.Pipeline     Description: One or more component failed validation.  
End Error  

Code: 0xC0024107     Source: DFT Insert Execution Log      Description: There were errors during task validation.  
End Error  

DTExec: The package execution returned DTSER_FAILURE (1). 

再犯一个错误-

代码语言:javascript
复制
Code: 0xC0202009     Source: MyPackage Connection manager "MyOLEDBConnection"     Description: SSIS Error Code DTS_E_OLEDBERROR.  An OLE DB error has occurred. Error code: 0x80040E4D.  
An OLE DB record is available.  Source: "Microsoft SQL Server Native Client 10.0"  Hresult: 0x80040E4D  Description: "Login failed for user 'MyUser'.".  
End Error  

Code: 0xC020801C     Source: MyPackage Log provider "SSIS log provider for SQL Server"     Description: SSIS Error Code DTS_E_CANNOTACQUIRECONNECTIONFROMCONNECTIONMANAGER.  The AcquireConnection 
method call to the connection manager "MyOLEDBConnection" failed with error code 0xC0202009.  There may be error messages posted before this with more information on why the AcquireConnection method 
call failed.  COM error object information is available.  Source: "MyPackage"  error code: 0xC0202009  Description: "SSIS Error Code DTS_E_OLEDBERROR.  An OLE DB error has occurred. Error code: 0x80040E4D.  
An OLE DB record is available.  Source: "Microsoft SQL Server Native Client 10.0"  Hresult: 0x80040E4D  Description: "Login failed for user 'MyUser'.".  ".  
End Error  

Code: 0xC0202009     Source: MyPackage Connection manager "MyOLEDBConnection"     Description: SSIS Error Code DTS_E_OLEDBERROR.  An OLE DB error has occurred. Error code: 0x80040E4D.  
An OLE DB record is available.  Source: "Microsoft SQL Server Native Client 10.0"  Hresult: 0x80040E4D  Description: "Login failed for user 'MyUser'.".  
End Error  

Code: 0xC020801C     Source: DFT Insert Execution Log OLE_DST Insert SSIS Execution Log [25]     Description: SSIS Error Code DTS_E_CANNOTACQUIRECONNECTIONFROMCONNECTIONMANAGER.  
The AcquireConnection method call to the connection manager "MyOLEDBConnection" failed with error code 0xC0202009.  There may be error messages posted before this with more information 
on why the AcquireConnection method call failed.  
End Error  

Code: 0xC0047017     Source: DFT Insert Execution Log SSIS.Pipeline     Description: component "OLE_DST Insert SSIS Execution Log" (25) failed validation and returned error code 0xC020801C.  
End Error  

Code: 0xC004700C     Source: DFT Insert Execution Log SSIS.Pipeline     Description: One or more component failed validation.  
End Error  

Code: 0xC0024107     Source: DFT Insert Execution Log      Description: There were errors during task validation.  
End Error  
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-01-17 16:48:42

理解问题

Server本机客户端提供程序是OLE DB连接字符串中的SQLNCLI*。

  • 2005年使用SQLNCLI.1
  • 2008年使用SQLNCLI10
  • 2012年使用SQLNCLI11

在这篇文章中,Server 2014的SQLNCLI12发行版中没有包含一个CTP2。

这些提供程序通常可以与Server的早期版本进行对话,但是版本的前瞻性不太可能(除了SQLNCLI11与2014年的通信)。

根本原因

使用该计算机上不存在的提供程序具有OLE连接字符串。也许您以2005格式构建了包,但正在2008年实例上运行它。无论如何,连接字符串的格式为

代码语言:javascript
复制
Provider=SQLNCLI.1;Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;

将需要更新以匹配机器上的提供程序。

代码语言:javascript
复制
Provider=SQLNCLI10;Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;

这通常可以通过明智地使用Configurations来解决。

票数 15
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21150606

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档