您的位置:首页 > 其它

实例学习SSIS(四)-- 使用日志记录和错误流重定向

2009-11-29 13:04 483 查看
一、使用日志记录

SSIS提供的日志记录方式:


文本文件

SQL Server Profiler

Windows 事件日志

SQL Server

XML 文件

准备工作

使用上节的包,修改myconfig.dtsConfig,将文件夹对应到D:\lyp\SQL\SSIS\package4。

在文件夹下新建userinfo5.txt和userinfo6.txt。

Userinfo5.txt:11|name11|我是name11|男,12|name12|我是name12|女

Userinfo6.txt:13|name13|我是name13|男,14|name14|我是name14|女

步骤:

1、添加一条文本日志,如下图:



2、指定写入日志信息的txt文件,如下图:



3、选择要记录的事件:


调试:



在D:\lyp\SQL\SSIS\package4下创建了一个log.txt文件,可以看到里面有相应的事件执行记录。
二、使用错误流重定向

SSIS错误处理方式


在数据转换时很有可能会发生错误,SSIS对错误的处理方式:

1、选择忽略某些列中的失败;

2、重定向整个失败的行;

3、使组件失败。

默认情况下,所有组件发生错误时失败,从而导致包失败并停止后续处理。

为了不让包停止,发生错误时,通过配置来处理错误,通常是将失败的行重定向到别处进行处理。

准备工作

1、使用上面日志记录用到的包;

2、创建有错误的数据源文件userinfo7.txt(D:\lyp\SQL\SSIS\package5\)。

userinfo7.txt:15|name15|我是name15|男,abc|name17|我是name17|女,18|name18|我是name18|女

在转换id为int时会出现错误。

使用组件失败的情况

在“数据流”中编辑“用户来源”平面文件源,在“错误输出”中将各列的“错误”选成“组件失败”:


调试程序,可以看到“用户来源”变成了红色,整个包停止了,文件中的数据没有被成功导入到数据库中。



使用错误流重定向

目标

把出错的行重定向的别的文件(errorLog.txt)而不会使包停止。

步骤:

1、拖拽一个“平面文件目标”到数据流选项卡。

2、把“用户来源”的红箭头拖到该目标上,在弹出的“配置错误输出”中将UiD的“错误”选择为“重定向行”。

3、编辑“平面文件目标”:

新建“平面文件链接管理器”,选择错误记录文件(errorLog.txt),如下:





调试:

调试程序,可以看到向数据库中插入了两条记录,并在errorLog.txt中写入了出错的行。(文/青羽



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: