何时使用脚本任务代替SSIS中的sql任务和Web服务任务

时间:2011-05-30 06:08:12

标签: ssis

我是SSIS的新手。我的问题是,我必须做一个数据库查询。然后,我必须进行Web服务调用,将我从db查询获得的结果传递给Web服务。 我可以首先使用sql任务进行数据库查询,然后使用Web服务任务进行Web服务调用。另一种方法是在c#代码中完成整个操作并将其放在脚本任务中。 我可以使用企业库通过C#代码进行数据库查询,然后调用Web服务。 有什么更好的方法呢?哪一个能提供更好的性能?

1 个答案:

答案 0 :(得分:5)

这两种方法都可行。两者都可能产生大致相同的性能 - 通常SQL Server上的查询执行是最慢的部分,并且调用它的方式无关紧要。

但是如果你用C#代码做所有事情并把它放在脚本任务中 - SSIS的好处是什么?您也可以使用C#完成所有操作并将其放在独立的控制台应用程序中。

通常使用SSIS来避免编写代码,并使用声明性程序定义 - 这是更易于维护,更容易让其他人理解和支持等等。打开包并看到SQL任务和Web服务任务的人将能够在不打开脚本任务和检查代码的情况下理解并调整正在进行的操作。它还需要较少的开发人员专业知识来维护此类包。

脚本任务仅在某些事情无法通过现有SSIS任务或转换直接完成时使用。如果我在Script Task中看到包含所有代码的包 - 我会问为什么这个人根本使用SSIS?使用独立控制台应用程序可以更简单,更可靠(比脚本任务中的相同代码),避免不必要的依赖等等。

简短:如果您使用SSIS - 尽可能避免使用脚本任务。