SSIS常用的包—使用Bulk Insert执行任务
来源:互联网 发布:怎么看淘宝客下单 编辑:程序博客网 时间:2024/06/05 03:59
现在执行一个简单的bulk insert任务来练习刚才讨论的话题。首先创建一个名字为的SSIS项目。将Package.dtsx重新命名为BulkLoadZip.dtsx,如果弹出对话框提示是否重命名选择是。
首先新建文件夹C:/SSISDemos,将文件(/Files/tylerdonet/ZipCode.txt)放入这个文件夹内。然后在本地新建数据库,名字使用微软常用数据库的名字AdventureWorks,使用下面的代码新建一个表:
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语句:
最终界面如下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执行任务
- SSIS常用的包—大量插入任务(Bulk Insert task)
- SSIS常用的包—执行任务
- SSIS常用的包—执行程序包任务
- SSIS常用的包—数据流任务
- SSIS常用的包—文件系统任务
- SSIS常用的包—FTP任务
- SSIS常用的包—脚本和组件任务
- SSIS常用的包—发送Email任务
- SSIS常用的包—消息队列任务
- SSIS常用的包—Web服务任务
- SSIS常用的包—WMI数据读取任务和WMI事件监听任务
- 3.3 Bulk Insert任务
- 执行数据导入的Bulk Insert与Insert Into
- BULK INSERT的使用,FIRSTROW的赋值
- 3.4 使用Bulk Insert和Execute SQL任务
- bulk insert 和 insert bulk的区别
- 执行SSIS包的批处理代码
- AT91SAM9261的LCD控制器学习笔记
- 开源引擎推荐—ElGameEngine 作者:trcj(http://blog.csdn.net/trcj1)
- linux下TXT显示乱码
- linux牛人博客
- SDK兼容性引导
- SSIS常用的包—使用Bulk Insert执行任务
- 第三方支付接口,银行接口(附下载),third party bank interface
- java.util.concurrent
- 进程的内核对象句柄表
- how to judge a string is eauql 0
- 将weblech改造成文件爬虫(一)
- 用AOM对象模式实现QTP的远程调用
- perl 时间处理
- 【转】Ubuntu下的c++编程环境构建