一步一步创建一个简单的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 ...
随机推荐
- JavaScript获取HTML页面源代码
来自:http://www.cnblogs.com/luckbird/archive/2008/02/01/1061048.html <a href="javascript:gets( ...
- KEEPALIVED 检测RS原理
keepalived管理的的ipvs功能支持对后端节点真实服务器的健康检查 一般常用的方式包括tcp_check 和http_get(更准确) tcp_check 原理就是对真实服务器进行ip+端口的 ...
- 如何在64位系统上安装SQL Server 2000
如何在64位系统上安装SQL Server 2000? 现在用SQL Server 2000数据库的人少了吧?大都是SQL Server 2005/2008了.不过还是有需求的,今天一朋友就让我在他的 ...
- C# 通用数据访问类(SqlHelper)
[转]C# 通用数据访问类(SqlHelper) 注:本文转自http://www.tzwhx.com/newOperate/html/3/31/312/13080.htmlVisual C# 动态操 ...
- [转]Java 动态代理机制分析及扩展
引言 Java 动态代理机制的出现,使得 Java 开发人员不用手工编写代理类,只要简单地指定一组接口及委托类对象,便能动态地获得代理类.代理类会负责将所有的方法调用分派到委托对象上反射执行,在分派执 ...
- postfix 不记录日志的问题解决方法
国内私募机构九鼎控股打造APP,来就送 20元现金领取地址:http://jdb.jiudingcapital.com/phone.html内部邀请码:C8E245J (不写邀请码,没有现金送)国内私 ...
- 最近看了点C++,分享一下我的进度吧!
#include <iostream> #include <cmath> #include <iomanip> using namespace std; //Stu ...
- Centos 7 yum 安装php
yum install php php-devel 重启apache使php生效 /etc/init.d/httpd restart 此时可以在目录:/var/www/html/下建立一个PHP文件 ...
- js 如何把JSON格式的字符串转换为JSON对象
直接用eval函数.例:var str1 = '{ "url": "www.51qdq.com", "name": "js&quo ...
- 面试题总结之JAVA
JAVA 1. what is thread safe? 线程安全就是说多线程访问同一代码,不会产生不确定的结果.编写线程安全的代码是低依靠线程同步.线程安全: 在多线程中使用时,不用自已做同步处理线 ...