有没有办法在Visual Studio中执行SSIS包而不是解决方案的一部分?

时间:2011-01-18 18:57:22

标签: visual-studio-2008 ssis

我一直在使用SSIS已经有一段时间了,它一直在告诉我,如果你打开一个没有它在解决方案中的SSIS包,Visual Studio中就没有可用的调试或执行选项。

在我当前的项目中,我需要编辑一些从文件系统执行的服务器上留下的SSIS包。问题是部署阶段没有(也不应该)包括复制解决方案(.sln)文件。如果我然后在默认位置创建解决方案并添加包,则会将其复制(而不是直接引用它们)。这是一个问题,因为有些人执行驻留在同一目录中的其他包。因此,我必须复制SSIS包,编辑,测试,将其复制回原始位置。正如你想象的那样,这有时会非常烦人。

所以我想知道,有没有办法执行这些包而不将它们包含在解决方案中?

我正在使用Visual Studio 2008,为SQL Server 2008制作SSIS包。

4 个答案:

答案 0 :(得分:7)

我同意。这是一种彻底的痛苦。您可以创建一个项目,其中包含一个简单的“包装器”包,其中包含一个执行包任务,该任务只是跳转到您要调试的包。当您调试包装器时,它将打开您的真实包,您可以调试。不理想,但至少是它的东西。

答案 1 :(得分:1)

不,你不能在VS内部进行,并且在没有项目的情况下使用SSIS调试器。您当然仍然可以使用DTEXEC.EXE在VS之外运行它。

(从技术上讲,软件包必须是项目 - .dtproj文件的一部分,如果需要,VS会创建解决方案,因此您可以跳过.sln文件)

答案 2 :(得分:0)

您也可以将包的xml添加到.dtproj文件中。这将允许您打开并将其作为包的一部分运行

答案 3 :(得分:0)

在不使用SQL Server Business Intelligence Development Studio的情况下,有多种方法可以执行包。

<强> 1。使用命令行实用程序(DTEXEC.EXE)执行SSIS包:

使用命令行实用程序并转到存储SSIS包的文件路径。 DTEXEC.EXE可能位于计算机的另一个路径中,因此请在此之前进行检查。

例如:C:\ Program Files \ Microsoft SQL Server \ 100 \ DTS \ Binn&gt; DTEXEC.EXE / F“C:\ Packages \ SSISPackageToRun.dtsx”

<强> 2。使用Execute Package Utility(DTEXECUI.EXE)执行SSIS包:

运行Execute Package Utility并从文件系统中选择要运行的程序包。单击“执行”按钮以运行包。

您也可以直接转到文件系统中的软件包,右键单击并选择打开(或使用Execute Package Utility打开,具体取决于设置),Execute Package Utility(DTEXECUI.EXE)将自动打开。单击“执行”按钮以运行包。

第3。使用Microsoft SQL Management Studio执行SSIS包:

右键单击对象资源管理器中的包,然后选择“运行包”。

<强> 4。使用SQL Server代理作业执行SSIS包:

创建SQL作业并在作业步骤中运行包。之后运行包含您的包的sql作业。

以下是良好解决方案的摘要: https://www.mssqltips.com/sqlservertip/1775/different-ways-to-execute-a-sql-server-ssis-package/