数据仓库之SSIS开发
2016-05-31 17:15
330 查看
1.从cdc捕获到数据以后, 连接ssis进行执行数据的抽取以及转换工作,把需要的数据导入到数据仓库,
并且做好对应的日志记录表.现在先说一下比较重要的.
![](https://images2015.cnblogs.com/blog/404829/201605/404829-20160531170354914-561290230.png)
![](https://images2015.cnblogs.com/blog/404829/201605/404829-20160531170541852-1687122083.png)
选择参数化设置数据连接, 以方便后面的配置.
因为要动态可维护, 这里使用 可执行exe程序进行封装, 然后配置在windows计划任务里面
下面开始写代码
首先引入命名空间 和程序集
![](https://images2015.cnblogs.com/blog/404829/201605/404829-20160531170923399-1411842271.png)
然后开始开发代码
特别说一下, 这里 的 Connections v = dtsPackage.Connections; 获取的是 数据库连接配置, 具体的可以查看 dts包文件.
这里对其进行修改.(包里面的是测试环境的,现在要发布到正式环境上)
这里要说一下的是, 这里的 "cdc_xm_xmbj" 是变量.
有了这些以后,就可以实现从 生产库到数据仓库的数据转换.
并且做好对应的日志记录表.现在先说一下比较重要的.
![](https://images2015.cnblogs.com/blog/404829/201605/404829-20160531170354914-561290230.png)
![](https://images2015.cnblogs.com/blog/404829/201605/404829-20160531170541852-1687122083.png)
选择参数化设置数据连接, 以方便后面的配置.
因为要动态可维护, 这里使用 可执行exe程序进行封装, 然后配置在windows计划任务里面
下面开始写代码
首先引入命名空间 和程序集
using DTS = Microsoft.SqlServer.Dts.Runtime; using Microsoft.SqlServer.Dts.Runtime;
![](https://images2015.cnblogs.com/blog/404829/201605/404829-20160531170923399-1411842271.png)
然后开始开发代码
static void Main(string[] args) { //更改SSIS包里面的 变量 string path = @"E:\开发测试实例\SSIS2012\ConSSIS\ConSSIS\SSISPackege\xm_xmbj.dtsx"; DTS.Package dtsPackage = null; DTS.Application dtsApplication = null; dtsApplication = new DTS.Application(); //指定文件路径加载 package dtsPackage = dtsApplication.LoadPackage(path, null); Connections v = dtsPackage.Connections; //获取所有的 数据源连接,包括输入和输出 for (int i = 0; i < v.Count; i++) { if (v[i].Name == "XIANGZX.JGBDB.sa") { //指定数据库连接 v[i].ConnectionString = "Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Password=sa123.;Initial Catalog=JGBDB;Data Source=xiangzx"; } } DTS.Variables packageVariables1 = dtsPackage.Variables; packageVariables1["cdc_xm_xmbj"].Value = "exec [opr_].[cdc_xm_xmbjxx] '2016-05-30 00:00:00','2016-05-31 00:00:00'"; //传递参数 DTS.DTSExecResult packageResult = dtsPackage.Execute(); }
特别说一下, 这里 的 Connections v = dtsPackage.Connections; 获取的是 数据库连接配置, 具体的可以查看 dts包文件.
XIANGZX.JGBDB.sa 是数据库连接的名称.
这里对其进行修改.(包里面的是测试环境的,现在要发布到正式环境上)
DTS.Variables packageVariables1 = dtsPackage.Variables; packageVariables1["cdc_xm_xmbj"].Value="";
这里要说一下的是, 这里的 "cdc_xm_xmbj" 是变量.
有了这些以后,就可以实现从 生产库到数据仓库的数据转换.
相关文章推荐
- kafka入门:简介、使用场景、设计原理、主要配置及集群搭建
- C#在线预览文档(word,excel,pdf,txt,png)
- 查找笔记
- Unable to load DLL 'xxx.dll': 找不到指定的模块。 (Exception from HRESULT: 0x8007007E)
- ffmpeg对mpeg2-TS详细解析
- 判断字符串是否包含中文
- 4.自定义View
- Middle-题目84:82. Remove Duplicates from Sorted List II
- CSS 修改 IOS 默认按钮样式
- android:configChanges="screenSize | orientation | keyboardHidden"
- Linux下yum的基本使用
- Logistic回归总结
- Android自动化测试之Robotium学习(二)
- C++中c_str()函数的用法
- OC学习笔记(六)--类的常见错误总结
- 关于AVCaptureDevice
- Android发送邮件到指定邮箱(可带附件)
- eclipse报错"错误: 找不到或无法加载主类 jdk1.7"解决方案
- linked-list-cycle(LeetCode)
- java源码分析(4)-AbstractStringBuilder