SSIS 错误 "To run a SSIS package outside of SQL Server Data Tools you must install Standard Edition (64-bit) of Integration Services "

SSIS Error "To run a SSIS package outside of SQL Server Data Tools you must install Standard Edition (64-bit) of Integration Services "

我正在使用 Visual studio ultimate 2012、SQL Server 2017 和 Sql Server Data tools 2012。我正在使用 windows 10 64 位。

我的包由脚本任务 (c#) 和 Sql 命令组成,它 运行 从 SSDT 成功,但是在尝试从 CMD 运行 我的包时我得到

To run a SSIS package outside of SQL Server Data Tools you must install Standard Edition (64-bit) of Integration Services.

如果我制作另一个空包并尝试 运行 它那么它也会 运行 成功。 请帮忙

(1) Integration Services(共享功能)安装

我认为问题是您已经为 Visual Studio 安装了 SQL 服务器数据工具 (SSDT),但是您没有从 [=59] 安装集成服务(共享功能) =] 服务器安装,这是在 visual studio.

之外执行 .dtsx 包所必需的

有关详细信息,请查看以下内容 link:

(2) 使用 dtexec(32 位)执行

您可以尝试的另一件事是通过 32 位 dtexec 执行包。

如下所述Microsoft Documentation:

On a 64-bit computer, Integration Services installs a 64-bit version of the dtexec utility (dtexec.exe). If you have to run certain packages in 32-bit mode, you will have to install the 32-bit version of the dtexec utility. To install the 32-bit version of the dtexec utility, you must select either Client Tools or Business Intelligence Development Studio during setup.

By default, a 64-bit computer that has both the 64-bit and 32-bit versions of an Integration Services command prompt utility installed will run the 32-bit version at the command prompt. The 32-bit version runs because the directory path for the 32-bit version appears in the PATH environment variable before the directory path for the 64-bit version. (Typically, the 32-bit directory path is :\Program Files(x86)\Microsoft SQL Server0\DTS\Binn, while the 64-bit directory path is :\Program Files\Microsoft SQL Server0\DTS\Binn.)

更多信息:

  • How to execute a package in 32-bit mode using dtexec.exe?

另外,其他link中也提到了类似的问题,您可以查看它们以获取更多信息:

添加到 Hadi 的回答中,更改将是使用正确的版本,在我的情况下是使用 C:\程序Files\MicrosoftSQLServer0\DTS\Binn> 代替 C:\Program Files (x86)\Microsoft SQL Server0\DTS\Binn>

我有同样的错误,我安装了 2017 年的集成服务,所以建议的解决方案不相关。

我尝试了很多选项,包括卸载和 re-install,最终解决的是升级到企业版!

我发现在 dtexec 运行 成功安装了企业版的服务器中,而在有问题的服务器中没有企业版。 我是怎么找到它的?我 运行 两个服务器中的以下内容:

  1. 运行 setup.exe SQL SERVER 2017 安装文件
  2. 在左侧菜单中您会看到“工具”- 按 link
  3. 查找:“已安装 SQL 服务器功能发现报告”
  4. 您将在 版本 列中看到空单元格,而 “企业版” 这是成功的!

我是如何在有问题的服务器中升级的?

  1. 运行 setup.exe SQL SERVER 2017 安装文件
  2. 在左侧菜单上您会看到“维护”- 按 link
  3. 查找:“版本升级”
  4. 按照说明进行操作,在我的情况下,因为我的组织有一个自动更新的密钥,所以我只需按几次“下一步”,直到成功升级

祝你好运!