【问题标题】:How to execute a 32 bit SSIS package in a 64bit package?如何在 64 位包中执行 32 位 SSIS 包?
【发布时间】:2015-01-29 15:50:55
【问题描述】:

我正在开发一个集成服务项目以构建 ETL。

我的一个包包含多个脚本任务来解析 Excel 内容(Microsoft Ace 12 驱动程序)。这个包需要在 32 位模式下执行(我不能在 64 位下执行这个包)。我无法安装 64 位版本的驱动程序。

此外,我将它包装在更高级别的 64 位包中。 “加载调用”包应在 32 位模式下执行。

那么有没有办法在64位包中运行32位执行包任务呢?

谢谢!

【问题讨论】:

  • 如果执行包任务中没有选项,那么我猜你将不得不使用执行进程任务命令来运行 32 位版本的 DTEXEC.EXE。传入和传出什么样的参数?

标签: sql-server ssis sql-server-2012 32bit-64bit


【解决方案1】:

可以将包执行从 64 位更改为 32 位

Projects Menu->Package Properties(Last in menu)->Debugging

更改 Run64BitRuntime->false

【讨论】:

  • 这个技巧是以 32 位模式运行包和子包,但只能在调试 (SSDT) 模式下运行。我的问题是关于以 32 位运行其中一个子包,但将其他子包保持在 64 位。
【解决方案2】:

您可以使用执行流程任务而不是将其作为包执行。这将尊重 x32/x64 设置。

https://msdn.microsoft.com/en-us/library/ms141166.aspx

http://toddmcdermid.blogspot.com/2009/10/quick-reference-ssis-in-32-and-64-bits.html

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-04-18
    • 2018-08-05
    • 1970-01-01
    • 2014-11-27
    • 1970-01-01
    • 1970-01-01
    • 2015-08-19
    相关资源
    最近更新 更多