SQL Server 32-bit easysoft IB6 odbc SSIS package failing with validation error: codes 0x80004005 and 0xC0014009 when run by a sql server agent job

SQL Server 32-bit easysoft IB6 odbc SSIS package failing with validation error: codes 0x80004005 and 0xC0014009 when run by a sql server agent job


我在 sql 服务器 2012 上有一个 SSIS 包。 它利用 easysoft odbc 连接来访问和优化考勤控制器。在我的项目中,我有 Run64BitRuntime 为假。我的 SQL 代理作业也设置为 32 位 运行 时间。

我使用 SSIS 代理帐户,它是一个管理员帐户。

我在同一台服务器上使用不同的 odbc 提供商 timebersoft 有另一个包 运行ning,但它 运行 没问题。

如果您需要更多详细信息,请告诉我您需要知道的内容。

以下错误仅在 程序包由 sql 服务器代理作业执行时发生。

Data Flow TAsk: Error: ODBC source failed validation and returned error code 0x80004005

attnd: Error: There was an error trying to establish and Open Database Connectivity (ODBC) connection with the database server.

Data Flow Task: Error: The AquireConnection method call to the connection manager Attnd failed with error code 0xC0014009.

我试图创建一个 hello world 版本,但每次导致它崩溃的唯一原因是当我尝试连接到 easysoft odbc 时。驱动程序已安装(名称{Easysoft IB6 ODBC};版本{1.00.01.70};公司{Easysoft Limited};文件{IB6ODBC.DLL};日期{6/5/2002})用户是同一管理员成功和失败的尝试

更新:7 月 21 日: 1. 试过安装不行。 2. 尝试使用 32 位 detexec.exe 的操作系统 (cmdline) 再次失败。 (仔细检查,我使用的命令确实在 cmdline 中起作用)

以下是您必须检查的几件事(从前端到后端)。看看你错过了什么。

  1. Run64BitRuntime 在项目设置中设置为 false。
  2. 相同的配置设置(将 Run64BitRuntime 设置为 false)应该用于部署。
  3. 如果您使用的是外部配置文件,并且有此 属性,请注意它已设置为 false。
  4. SQL 服务器 > 数据库引擎 > SQL 服务器代理 > 作业 > 你的作业属性 > Select 你 运行 SSIS 的步骤,然后单击编辑> 在'Execution Options' 选项卡检查 'Use 32 bit runtime'

希望对您有所帮助!

"You can use our Interbase ODBC driver from SQL Server Agent or any ODBC enabled application. You will however need to install a 64-bit Interbase client that is compatable with your Interbase server before you install the Easysoft ODBC driver. This can be obtained from Embarcadero"

问题似乎与软件有关。为了在 64 位系统上使用 easysoft,我需要正确安装 64 位驱动程序。

感谢@billinkc 指出安装问题。