[转]SSIS包的调用方式

正文转自:http://www.cnblogs.com/lijun4017/archive/2008/12/04/1347701.html

 

编排简单SSIS包光看MSDN应该就问题不大了,最近几上几乎个对象来提问我SSIS的调用问题,然后想起自己那时促成调用SSIS包的题目之时光呢动了无数弯路,确实就地方的材料网上挺少.下面我总了一晃,大概分为这么三近乎吧.

1.利用sqserver2005的代办服务来新建作业来实施保证任务;

2.运用编程语言来兑现保之调用,比如c#或者vb.net等;

3.用存储过程或者sql语句来调用包;

脚我们一个一个开展讲一下:

1.采取代理服务的方式

自己觉着这种是调用SSIS包最有利之办法,我的BI项目被多都是应用这种方法的.

sqlserver2005安装收尾默认代理服务是禁用的,在”SQL Server Configuration
Manager”里面将他吃打开;图片 1

 

然后以sqlserver对象资源管理器里面找到sqlserver代理

图片 2

接下来新建作业图片 3

新建作业步骤,指定所在服务器,选择保险和一些保证的布置信息等

图片 4

 

新建作业计划,指定作业的实施周期

图片 5

 

再有下面的警报和通功能吗是那个有因此之效果,这里我不怕非演示了.

2.下编程语言调用

这种方式与底下的方法的规律其实为还同样,就是采取dtexec
这个保险执行工具来运行包.

行包时,dtexec 可能会见回来退出代码。使用该退代码填充 ERRORLEVEL
变量,然后可以当批判处理公事之条件语句或分段逻辑中测试该变量的价。下表列出了
dtexec 实用工具退出时可以设置的价。

0

已成功执行包。

1

包失败。

3

用户取消了包。

4

实用工具找不到请求的包。无法找到包。

5

实用工具无法加载请求的包。无法加载包。

6

实用工具的命令行中有内部语法错误或语义错误。

 

System.Diagnostics.Process.Start(“dtexec.exe”,”C:\\UpsertData.dtsx”);

自其他参数可以团结指定,关于dtexec的参数请参见MSDN

3.运用存储过程或者sql语句调用包

 可以从 xp_cmdshell 提示符下运行
dtexec。以下示例显示怎么运行名吧 UpsertData.dtsx
的包并忽略返回代码:

EXEC xp_cmdshell ‘dtexec /f
“C:\UpsertData.dtsx”‘

以下示例显示怎么运行相同的包并捕获返回代码:

DECLARE @returncode int
EXEC @returncode = xp_cmdshell 'dtexec /f "C:\UpsertData.dtsx"'

相关文章