SSIS包中的SQL连接通过Webservices

时间:2022-02-17 11:35:31

I have SSISpackage which is developed in VS2008/SQL2008(Target Database),My source data is SQL2005. This package is execute with in the .Net framework of webservice. while executing am getting error with SOURCE Connection (with provider=SQLNCLI10 in connection string)

我有在VS2008 / SQL2008(目标数据库)中开发的SSISpackage,我的源数据是SQL2005。该包在webservice的.Net框架中执行。使用SOURCE Con​​nection执行错误时(连接字符串中的provider = SQLNCLI10)

getting error,the description as follows.

得到错误,描述如下。

Description: SSIS Error Code DTS_E_OLEDBERROR.  An OLE DB error has occurred.
 Error code: 0x80004005.
An OLE DB record is available.  Source: "Microsoft SQL Server Native Client 10.0"  Hresult: 0x80004005
 Description: "Login timeout expired".
An OLE DB record is available.  Source: "Microsoft SQL Server Native Client 10.0"  Hresult: 0x80004005
 Description: "A network-related or instance-specific error has occurred while establishing a connection to SQL Server. Server is not found or not accessible. Check if instance name is correct and if SQL Server is configured to allow remote connections. For more information see SQL Server Books Online.".
An OLE DB record is available.  Source: "Microsoft SQL Server Native Client 10.0"  Hresult: 0x80004005
 Description: "Named Pipes Provider: Could not open a connection to SQL Server [2]. ".

please let me know how to resolve this issue.

请告诉我如何解决此问题。

1 个解决方案

#1


That error message generally pops up if you have improper credentials.

如果您有不正确的凭据,通常会弹出该错误消息。

Ensure that you can connect to the server via the same credentials used in the SSIS package via Management Studio. The SQL 10.0 driver is fully compatible and able to connect to a SQL 2005 box.

确保您可以通过Management Studio通过SSIS包中使用的相同凭据连接到服务器。 SQL 10.0驱动程序完全兼容,并且能够连接到SQL 2005框。

Most often, however, is that you're running this as the SQL Server Agent account, which is a SQL Server account. And you're connecting to a remote server. If this is the case, you need to create a Credential in SQL Server. Then, you have to create a Proxy in SQL Server Agent, and allow it to run SSIS packages. Then, assign that Proxy as the owner of the Job Step that kicks off the package.

但是,大多数情况下,您将其作为SQL Server代理帐户运行,该帐户是SQL Server帐户。而且你正在连接到远程服务器。如果是这种情况,则需要在SQL Server中创建凭据。然后,您必须在SQL Server代理中创建代理,并允许它运行SSIS包。然后,将该代理分配为启动程序包的作业步骤的所有者。

#1


That error message generally pops up if you have improper credentials.

如果您有不正确的凭据,通常会弹出该错误消息。

Ensure that you can connect to the server via the same credentials used in the SSIS package via Management Studio. The SQL 10.0 driver is fully compatible and able to connect to a SQL 2005 box.

确保您可以通过Management Studio通过SSIS包中使用的相同凭据连接到服务器。 SQL 10.0驱动程序完全兼容,并且能够连接到SQL 2005框。

Most often, however, is that you're running this as the SQL Server Agent account, which is a SQL Server account. And you're connecting to a remote server. If this is the case, you need to create a Credential in SQL Server. Then, you have to create a Proxy in SQL Server Agent, and allow it to run SSIS packages. Then, assign that Proxy as the owner of the Job Step that kicks off the package.

但是,大多数情况下,您将其作为SQL Server代理帐户运行,该帐户是SQL Server帐户。而且你正在连接到远程服务器。如果是这种情况,则需要在SQL Server中创建凭据。然后,您必须在SQL Server代理中创建代理,并允许它运行SSIS包。然后,将该代理分配为启动程序包的作业步骤的所有者。