[转]SSIS包的调用情势

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

 

编写简单SSIS包光看MSDN应该就难题相当的小了,方今几天多少个对象来问我SSIS的调用难题,然后想起自家当年实现调用SSIS包的难点的时候也走了广大弯路,确实那上边的资料网上很少.上边小编总括了须臾间,大约分为这么三类吧.

1.行使sqserver二〇〇七的代理服务来新建作业来施行李包裹任务;

2.使用编制程序语言来兑现包的调用,比如c#或者vb.net等;

3.选择存款和储蓄进程也许sql语句来调用包;

上边大家一个三个进展讲一下:

1.使用代理服务的艺术

自个儿以为这种是调用SSIS包最利于的方法,小编的BI项目中几近都以利用那种艺术的.

sqlserver贰零零伍安装完成暗许代理服务是禁止使用的,在”SQL Server Configuration
Manager”里面把她给打开;图片 1

 

然后在sqlserver对象能源管理器里面找到sqlserver代理

图片 2

接下来新建作业图片 3

新建作业步骤,钦点所在服务器,选取包以及一些包的布署消息等

图片 4

 

新建作业布署,钦命作业的施行周期

图片 5

 

再有上边包车型地铁警报和公告效能也是很有用的法力,那里自身就不演示了.

2.用到编制程序语言调用

那种措施和底下的点子的法则其实也都如出一辙,正是运用dtexec
那么些包执行工具来运维李包裹.

行包时,dtexec 只怕会回去退出代码。使用该退出代码填充 E索罗德RO翼虎LEVEL
变量,然后能够在批处理公事的条件语句或分支逻辑中测试该变量的值。下表列出了
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"'

相关文章