惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园 - 【当耐特】
云风的 BLOG
云风的 BLOG
罗磊的独立博客
C
Check Point Blog
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Blog — PlanetScale
Blog — PlanetScale
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
月光博客
月光博客
大猫的无限游戏
大猫的无限游戏
Google DeepMind News
Google DeepMind News
Engineering at Meta
Engineering at Meta
N
Netflix TechBlog - Medium
宝玉的分享
宝玉的分享
Recent Announcements
Recent Announcements
酷 壳 – CoolShell
酷 壳 – CoolShell
博客园_首页
J
Java Code Geeks
Apple Machine Learning Research
Apple Machine Learning Research
人人都是产品经理
人人都是产品经理
爱范儿
爱范儿
I
InfoQ
Hugging Face - Blog
Hugging Face - Blog
T
Tailwind CSS Blog
B
Blog RSS Feed

博客园 - xuanfeng

计算汽车行驶的方向 计算两个GPS坐标的距离 C#串口读取GPS接收仪器的数据 篮牙接收GPS数据格式说明 测试SqlHelp,linq to SQL,Nhibernate批量处理数据的效率 Memcahed分布式缓存服务替换Session解决方案 Session问题小记 分析Memcached客户端如何把缓存数据分布到多个服务器上 Memcached 相关收藏 C# 实现二维数组的排序算法(代码) 面试过的三道与数据结构相关的题目 . NET引用 COM :Microsoft DTS Runtime 1.0 出错,请教解决方法 ADOMD.NET实现多维数据库数据挖掘相关信息查看功能 商业智能方面相关资料收藏 脱离SSIS强大的可视化编辑功能,后台C#实现包的创建-爽一把 发布一个C#+ADOMD.NET实现查看分析服务数据库信息的类对象 ADOMD。NET查询Analysis Servies中多维数据集 修改存储过程插入自定义的SSIS SQL Server 日志信息 C#编程方式执行包的任务
提供简洁版创建SQL Server 数据集成包辅助类库设计与实现
xuanfeng · 2008-08-10 · via 博客园 - xuanfeng

 内容概览:

      动机

      目标

      设计

       解决方案说明与下载

       测试示例  

 A. 动机

SSIS提供了一强大的可视化的包编辑功能,太过于依懒可视化功能,使程序不够灵活,可重性低。需要把一些简单的,可重用性高的功能迁移到后台去做,而不必要再每个包添加可重用性较高的步骤,这样为以后的唯护减少众多的麻烦

B.   目标:
    1
、在包中添加连接管理器
    2
、在包中添加参数
    3
、在包中添加包配置
    4
、在包控制流中添加任务
    5
、在数据流中添加适配器(源与目标)
    6
、创建适配器这间的管道
    7
、处理适配器的输入列与输出列的映射

           现在做的很简单,希望给有兴趣的朋友一个参考,由于没有向SSIS一样有可视化的数据验证提示功能,可能在创建时不小时就出现COM异常。
     
非常希望有兴趣的朋友给点意见,和有兴趣朋友去扩展它,让它更强大些,到时别忘了给我一份参考,也让我爽一把

C. 简洁版创建SQL Server 数据集成包辅助类库设计   

     如下(图1)所示,类库中包含四大模块: 控制流(ControlFlow),数据流(DataFlow),连接管理器(Connections),外部数据源(ExternalMetadata) 。 

 控制流模块中中实现功能包含:

1.添加执行SQL任务
2.
添加执行包任务
3.
创建包中任务之间的连接
4.
添加参数集合
5.
添加包配置

数据流模块中实现功能包含:

1.创建一个数据流适配器组件
2.
创建组件之间路径
3.
获取数据流中的组件
4.
映射上流数据流组件输出列与下流数据流组件的输入列
5.
映射源适配器的输出列
6.
映射目标适配器的输入输出列

连接管理器模块实现的功能包含:

     1.向包中添加连接器
2.
初始化平面文件连接管理器的配置
3.
获取创建连接器的短名称     

      外部数据源

      支持平面文件,源文件,OLEDB类型数据源。 

 

                              (图1)

 连接管理器模块


控制流模块

 

 数据流模块

 A. 解决方案说明与下载:

    解决方案中包含有两个项目,一个是实现创建SSIS包对象辅助类库,一个是测试类库的一个示例。创建SSIS包对象辅助类库代码分四大块:添加连接管理器相关方法的类,添加控制流中任务中的相关方法类,添加数据流中组件的相关方法类,和提供创建包中对象的配置信息实体。

解决方案下载

   E 测试示例 

     在这个测试中,主要是用创建好的Simple.SSIS辅助类去创建两个测式示例:一个是父包调子包,一个是数据清洗例子。父包调子包,父包中包含一个执行包任务,执行包的的任务就是执行已创建好的子包,子包中包含一个执行SQL任务。
数据清洗任务中,数据从一个文本文件中清洗到数据库中,过程中不做任何处理,如果数据库支持的数据    
    数据清洗示例中文本中的数据TestData.TXT
    20080501|89|one
    20080502|98|two
    20080506|100|three
    20080507|110|four
    数据清洗示例中数据库表
  

Code

Code

结束!