SSIS常用的包—使用Bulk Insert执行任务

转载 2011年01月24日 10:19:00

现在执行一个简单的 bulk insert任务来练习刚才讨论的话题。首先创建一个名字为的 SSIS项目。将 Package.dtsx重新命名为 BulkLoadZip.dtsx,如果弹出对话框提示是否重命名选择是。

   首先新建文件夹C:/SSISDemos ,将文件(/Files/tylerdonet/ZipCode.txt )放入这个文件夹内。然后在本地新建数据库,名字使用微软常用数据库的名字AdventureWorks ,使用下面的代码新建一个表:

1  CREATE   TABLE  InsertContent (
2  ZipCode  CHAR ( 5 ),
3  State  CHAR ( 2 ),
4  ZipName  VARCHAR ( 16 )
5  )

  新建一个SSIS项目,使用默认的package,将它重命名为BulkInsertTask.dtsx,切换到Control Flow 界面 ,从工具栏中分别若放一个Execute SQL Task 和Bulk Insert Task。双击打开Execute SQL Task 的编辑界面,重新命名为Purge InsertContent table,在描述栏内填写自己想要的描述。

Connection 框创建 localhost.AdventureWorks 链接,在 SQLStatemen 框内填写下面的 SQL 语句:  

1  DELETE   FROM  InsertContent

最终界面如下3-5,点击OK退出界面。

 

 

 

 从工具栏中拖放一个Bulk Insert Task,双击打开编辑界面,在Connection标签选择下拉列表中的<New connection …… > 新建一个OLE DB连接,在这个界面中新建一个连接,连接到本地服务器中 AdventureWorks 数据库中,界面如图 3-3 ,在你自己的机器上信息可能有所不同 ,新建连接的界面如下。

 

 

Connection下拉列表框内现在可以看到刚才创建的链接,在目标表中选择表 [AdventureWorks].[dbo].[InsertContent ]。其他设置保持默认。行间隔符是 {CR}{LF}(表示回车换行),列间隔符是制表符。在 File框内再次选择 <New connection…> 创建一个连接,打开连接管理界面。在 Usage Type下拉列表框中选择 Existing File ,这里选择 C:/SSISDemos/ZipCode.txt。最终的界面如下图 3-4

 

 

下一步在 Options标签界面内设置 FirstRow 2。如果打开 ZipCode.txt文件,可以发现在数据行之间有一个表头。设置 FirstRow 2执行 task的时候将忽略第一行的表头,从第二行开始插入。点击 OK退户界面。

点击任务 第一个Purge InsertContent Table底部的绿色箭头不放,拖动鼠标指向第二个任务 Load Zip Codes,会有一条绿色带箭头连线。这个连线创建两个 task之间的先后顺序,第一个 task执行成功之后第二个任务才能执行。至此这个 package已经完成了,点击保存并执行它。执行的时候首先使用 SQL语句将表清空,然后 bulk insert重新插入数据,执行成功之后,图标变成绿色的,如下图 3-6

 

点击 Stop 按钮可以中断执行。 Bulk Insert 的弊端是不能进行错误处理,它是一种要么全部,要么没有的任务。如果一行插入失败整个任务都将失败(通过设置最大错误数可以改变这种情况)。

SSIS常用的包—大量插入任务(Bulk Insert task)

大量插入任务允许像BULK INSERT语句或者bcp.exe命令行工具一样从 txt文件(也叫做平面文件)中插入数据。这个 task工具箱中的 Control Flow Items中,它不会产...
  • plean
  • plean
  • 2011年01月24日 09:44
  • 1220

SSIS常用的包—执行任务

执行一个任务将会执行一个或一系列的 SQL语句或存储过程。在 SSIS中还支持执行文件中的 script。大多数的配置在下图(图 3-1)中呈现。停止时间 Timeout选项设置任务开始执行...
  • plean
  • plean
  • 2011年01月24日 10:08
  • 715

SSIS常用的包—Web服务任务

Web服务任务是一个在SSIS中新添加的任务,它可以连接一个webservice并执行服务中的一个方法。执行方法之后可以将结果写回到一个变 量或者文件中。这个任务适合处理第三方应用中的信息。例如可以...
  • plean
  • plean
  • 2011年03月07日 11:34
  • 1254

SSIS常用的包—FTP任务

FTP任务允许你通过FTP来接收和传送文件。在SQL Server 2000中只能通过它来接收文件。在SSIS中对它进行了大量的改进。可以接收,删除本地或者远程服务器上的文件。也可以在本地或远程服务器...
  • plean
  • plean
  • 2011年01月31日 11:14
  • 1931

SSIS常用的包—数据流任务

数据流任务如果你对 SQL Server 2000 DTS比较熟悉,对这种数据流任务不会有了解,因为同其他任务比较它是一种很特殊的任务。主要说明数据怎样写入系统。SQL Server 2005中最大...
  • plean
  • plean
  • 2011年01月31日 10:48
  • 731

SSIS常用的包—WMI数据读取任务和WMI事件监听任务

Windows Management Instrumentation (WMI)是Windows的最高机密之一,它允许你通过一个脚本界面来管理Windows平台。WMI数据读取任务通过WQL语言(...
  • plean
  • plean
  • 2011年03月07日 11:36
  • 936

使用克隆exe执行任务

  • 2015年07月18日 21:16
  • 32KB
  • 下载

SSIS常用的包—通用的属性

今天讲学习一下SSIS包中通用的属性,这部分没有实际操作的部分,只是一些简单的介绍。无论使用包中的何种 task,都有一些通用的属性,在这里列举:  • Disable:设置这个属性为true使该t...
  • plean
  • plean
  • 2011年01月24日 10:02
  • 696

celery常用配置总结 【celery配置worker数和单个worker最多执行任务数】

我用的setting配置:#!/usr/bin/env python import random from kombu import serialization from kombu import E...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:SSIS常用的包—使用Bulk Insert执行任务
举报原因:
原因补充:

(最多只允许输入30个字)