本文转自: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"里面把他给开启;

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

然后新建作业

新建作业步骤,指定所在服务器,选择包以及一些包的配置信息等

新建作业计划,指定作业的执行周期

还有下面的警报和通知功能也是很有用的功能,这里我就不演示了.

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"'

最新文章

  1. Oracle修改字段类型方法总结
  2. Hibernate不能自动建表解决办法
  3. Android开发小问题总结
  4. gRPC Java的代码架构
  5. python 字符串查找
  6. buildroot httpd php
  7. Spring3.0 AOP 具体解释
  8. IIS服务器设置造成引用第三方权限不足问题
  9. python 多线程爬虫
  10. 帝国cms7.2自定义列表建立tag效果 代码 教程
  11. MSSQL - Sqlcommand
  12. Android 开发笔记___Activity的生命周期
  13. luogu P2071 座位安排
  14. c#基础之异常处理及自定义异常
  15. 《Linux内核分析》期终总结&《Linux及安全》期中总结
  16. Error: MDM failed command. Status: Only a single SDC may be mapped to this volume at a time
  17. border-color: transparent rgb(255, 48, 48) transparent transparent;
  18. 关于Java高并发的问题
  19. Sensor Fusion-based Exploration in Home Environments using Information, Driving and Localization Gains(基于传感器融合的使用信息、驾驶和定位增益在家庭环境中的探索)
  20. 两步实现在Git Bash中用Sublime打开文件

热门文章

  1. .NET Core、.NET Standard、Xamarin和.NET Framework对比
  2. python插入oracle数据
  3. NOIP 2011 Day2
  4. 比对两个Word文件内容是否一致的C#解决办法
  5. 何時需要重启 OFBiz
  6. PHP给图片加水印具体实现
  7. Introducing the Filter Types
  8. shell脚本学习(三)
  9. 【转载】TabLayout 源码解析
  10. 【转载】SwipeRefreshLayout源码解析