一步一步创建一个简单的Package(1)
创建Package之前首先我们理解需求:
数据源是一组历史货币数据包含在平面文件SampleCurrencyData.txt中,源数据中有四列。
下面是SampleCurrencyData.txt文件的一组示例数据:
1.00010001 ARS 9/3/2001 0:00 0.99960016
1.00010001 ARS 9/4/2001 0:00 1.001001001
1.00020004 ARS 9/5/2001 0:00 0.99990001
1.00020004 ARS 9/6/2001 0:00 1.00040016
1.00050025 ARS 9/7/2001 0:00 0.99990001
1.00050025 ARS 9/8/2001 0:00 1.001001001
1.00050025 ARS 9/9/2001 0:00 1
1.00010001 ARS 9/10/2001 0:00 1.00040016
1.00020004 ARS 9/11/2001 0:00 0.99990001
1.00020004 ARS 9/12/2001 0:00 1.001101211
1. 首先打开SQL Server Business Intelligence Development Studio -> 新建项目 -> Intergration Services 项目
命名项目为SSISStudy1, 如图1.1
2. 解决方案管理器 -> 右键单击SSIS包 新建一个Package -> 命名Package为 LoadEmployeeData.dtsx, 如图1.2
在图1.2中,左边工具栏中就是实现ETL 功能的工具(后面会有具体常用工具的功能描述),开发的时候我们需要把用到的工具拖到控制流的界面下,在连接管理器的界面上我们可以 通过右键单击创建于数据源的连接。
3. 下面我们开始根据需求去实现这个Package的功能。
首先在连接管理器界面创建一个平面文件连接, 如图1.3
文件名数据源文件的路径加文件名
标题行分隔符: 选逗号与文件中分隔符一致,可以通过左边预览键查看数据格式是否正确。
然后点击左边高级选项进行设置 如图1.4:
文件平面管理器会根据在常规选项设置的规则生成相应的列数,默认名称为列0, 列1, 列2. 需要我们在杂项中的Name属性中定义一个有意义的名字。
如果后期数据源中的列数目有变动的话,我们可以通过新建和删除进行调整。
在DataType中定义字段对应的类型, Integration Services 将根据前 200 行数据自动建议最合适的数据类型。 您还可以将这些建议选项改为增加或减少取样数据,以便指定整数数据或布尔数据的默认数据类型,或添加作为填充量添加到字符串列中的空格。
4. 在连接管理器界面单击右键创建一个OLE DB连接, 如图1.5:
文件中数据会通过该数据库连接加载数据到数据库AdventureWorks中。
5. 把工具栏中的数据流任务控件拖拽到控制流界面, 如图1.6:
6. 双击数据流进入数据流界面
拖拽平面文件源到数据流界面, 选择平面文件连接管理器Department(如果只有一个平面连接管理器的话会默认选择), 如图1.7:
7. 在工具箱的数据流目标列表下找到OLE DB目标拖拽到数据流界面, 与平面文件连接, 如图1.8:
设置OLE DB目标, OLE DB连接管理器为AdventureWorks,表为Department, 如图1.9:
进入映射选项, 使文件中的列(Source)与数据库表中列(Target)一一对应, 如:1.10:
到此为止这个package的基本功能以经完成了,下面就启动调试查看一下结果
通过查看结果发现数据已经插入到表中
到此为止一个简单的Package就完成了,当然我们会发现这个Package仅仅是实现了基本的功能,缺少异常处理,所以我们还要加上异常处理,如何进行异常处理会在后面详细描述。
一步一步创建一个简单的Package(1)的更多相关文章
- 《Entity Framework 6 Recipes》翻译系列 (3) -----第二章 实体数据建模基础之创建一个简单的模型
第二章 实体数据建模基础 很有可能,你才开始探索实体框架,你可能会问“我们怎么开始?”,如果你真是这样的话,那么本章就是一个很好的开始.如果不是,你已经建模,并在实体分裂和继承方面感觉良好,那么你可以 ...
- 用Eclipse 创建一个 简单的 Maven JavaWeb 项目
使用Maven 创建一个简单的 javaWeb 项目: 本篇属于 创建 JavaWeb 项目的第三篇: 建议阅读本篇之前 阅读 用 Eclipse 创建一个简单的web项目 ;本篇是这这篇文章的基础 ...
- 用 Eclipse 创建一个简单的web项目
Eclipse neon 汉化版 ; 1;右击新建 --> 选择 动态Web项目 2: 填写 项目名 项目位置 ; 选择 Dynamic web module version 和 tomca ...
- django创建一个简单的web站点
一.新建project 使用Pycharm,File->New Project…,选择Django,给project命名 (project不能用test命名) 新建的project目录如下: ...
- mysql 如何创建一个简单的存储过程
1 用mysql客户端登入2 选择数据库 mysql>use test3 查询当前数据库有哪些存储过程 mysql>show procedure status where Db='test ...
- Unity 2D游戏开发高速入门第1章创建一个简单的2D游戏
Unity 2D游戏开发高速入门第1章创建一个简单的2D游戏 即使是如今,非常多初学游戏开发的同学.在谈到Unity的时候.依旧会觉得Unity仅仅能用于制作3D游戏的. 实际上.Unity在2013 ...
- 如何创建一个简单的Visual Studio Code扩展
注:本文提到的代码示例下载地址>How to create a simple extension for VS Code VS Code 是微软推出的一款轻量级的代码编辑器,免费,开源,支持多种 ...
- 如何创建一个简单的C++同步锁框架(译)
翻译自codeproject上面的一篇文章,题目是:如何创建一个简单的c++同步锁框架 目录 介绍 背景 临界区 & 互斥 & 信号 临界区 互斥 信号 更多信息 建立锁框架的目的 B ...
- Windows 8.1 应用再出发 (WinJS) - 创建一个简单项目
前面几篇我们介绍了如何利用 C# + XAML 完成Windows Store App 功能的实现,接下来的几篇我们来看看如何利用 Html + WinJS 来完成这些功能. 本篇我们使用WinJS ...
随机推荐
- TCP恋爱史:三次握手和四次分手
TCP协议非常重要,这里把它的连接和释放整理一下. 首先是三次握手: 1. 客户端发起,像服务器发送的报文SYN=1,ACK=0,然后选择了一个初始序号:seq=x. SYN是干什么用的? 在链接的 ...
- 配置nginx,支持php的pathinfo路径模式
nginx模式默认是不支持pathinfo模式的,类似index.php/index形式的url会被提示找不到页面.下面的通过正则找出实际文件路径和pathinfo部分的方法,让nginx支持path ...
- css3种方法实现元素的绝对居中
元素的绝对居中应该是很多人熟悉的一个小应用,我记得很多年前去神州数码面试的时候就遇到过这个面试题.方法比较简单,代码如下: .node{ width : 300px; height : 400px; ...
- mysql slow log分析工具的比较
mysql 中的 slow log 是用来记录执行时间较长(超过 long_query_time 秒)的 sql 的一种日志工具. 启用 slow log 在 my.cnf 中设置 [mysqld] ...
- c/c++中使用指针需要注意的问题
一.使用指针的时候需要注意几点: 分配空间 初始化 释放 二.常见的错误有几种: 1)内存分配未成功,却使用了它 编程新手常犯这种错误,因为他们没有意识到内存分配会不成功.常用解决办法是,使 ...
- Indesign多媒体富交互插件【MagBuilder】与iOS app 【MagViewer】介绍
[写在前面]进园子有一段时间了,从来都是看别人的文章,自己的一点东西都记在本地笔记里,现在想把一些东西拿来出分享,希望能够认识一些志同道合的朋友和老师. 学习Adobe插件开发的初衷是为了给PS做插件 ...
- Effective C++ 条款45
本节条款的题目是运用成员模板接受全部兼容类型 作者阐述自己的观点是通过智能指针的样例. 在学习本节条款之前我们要先明确关于隐式转化的问题 例如以下代码: #include<iostream> ...
- 反射---Java高级开发必须懂的
理解反射对学习Java框架有很大的帮助,如Spring框架的核心就是使用Java反射实现的,而且对做一些Java底层的操作会很有帮助. 一.Class类的使用 1.万事万物皆 ...
- Redis 和 Memcached 的区别
来源:标点符 链接:http://www.biaodianfu.com/redis-vs-memcached.html Redis 的作者 Salvatore Sanfilippo 曾经对这两种基于内 ...
- Linux性能优化--CPU[备忘]
http://kumu-linux.github.io/blog/2014/04/21/performance-cpu/