SSIS任务整数未从varchar列重定向为错误数据

时间:2019-05-15 12:16:54

标签: sql-server error-handling ssis etl

enter image description here

我正在执行SSIS错误处理。 在excel文件源中有四列id,name,department,salary。 ID和薪金(整数列可以很好地检测varchar数据类型并重定向到错误的数据条目),但是名称和部门(varchar列考虑好的数据表中的整数和字符串都是这两个值)?

我们希望将整数值从名称和部门列重定向到错误的数据输入

在数据转换转换中,将错误输出选项卡配置为“重定向”所有四行。整数数据类型(Id和Salary)可以很好地将var-char值扔到错误的数据表中,但Va-char数据类型列(名称和部门)却没有将整数值扔到错误的数据表中。

enter image description here

有人可以帮我解决这个问题吗?

enter image description here

1 个答案:

答案 0 :(得分:1)

打开“数据转换转换”编辑器,转到Configure Error Output并将错误处理选项设置为Redirect Row

有关更多信息,您可以参考以下文章:


更新1

如果要从varchar列中提取数值,则必须使用派生列来检查它是否包含数值并根据结果重定向行:

示例

(DT_I8)[Name] == (DT_I8)[Name] ? NULL(DT_WSTR,50) : [Name] 

错误输出将包含非数字值。主输出将包含数字。