为什么SSIS Lookup任务输出DT_TEXT类型,即使通过查找返回的值是VARCHAR(50)?

时间:2010-02-01 22:04:43

标签: sql sql-server-2008 ssis

在64位版本的Windows 7 Professional上运行SQL Server Integration Services(64位安装SQL Server 2008 Developer)。

我有一个简单的SSIS包,它从分隔的文本文件中导入数据,查找SQL Server表,连接键字段(int)并从该表返回UserName(varchar(50))。 / p>

导入文件数据示例:

Key    Age
2      21
3      87
1      54

Key和age都是int。

查找表示例:

Key    UserName
1      Joe
2      Tom
3      Paul
4      Jack
5      Mary

Key为int,UserID为varchar(50)。

当我将查找框连接到下一步并将它们连接在一起(匹配字段)时,UserName字段的数据类型为DT_TEXT。

为什么会发生这种情况,我最好的解决方法是什么?我尝试了一个数据转换组件,但SSIS没有抱怨将DT_TEXT转换为varchar(DT_STR)。

1 个答案:

答案 0 :(得分:2)

您是否尝试过使用“显示高级编辑器...”(右键单击数据流源)并将“输入和输出”选项卡中“输出”列中的“数据类型属性”更改为数据类型“string [DT_STR ]“长度50”?