2011-05-30 92 views
1

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

回答

4

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

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

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

脚本任务然后只有当某些东西不能直接通过现有的SSIS任务或转换完成时使用。如果我看到一个脚本任务中包含所有代码的软件包,我会问为什么这个人使用SSIS?使用独立控制台应用程序会更简单,更可靠(比脚本任务中的代码相同),避免不必要的依赖性等。

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

+0

我不确定为什么最后一条语句不被更频繁地传讲。 – 2017-08-31 15:51:53