我希望通过查找目标表中的NVarChar(Max)列和源表中的NVarChar(20)列来从目标表中获取id。但是引发错误Cannot map the lookup column, 'Column1', because the column data type is a binary large object block (BLOB).
答案 0 :(得分:4)
在Lookup转换中,您需要将blob(nvarchar(max))强制转换为非blob类型。在这种情况下,我假设您需要将其强制转换为nvarchar(20)。
您需要在查找转换中编写查询,而不只是选择表。
假设查找表看起来像
LookupTable
--------------
Column0 int
Column1 nvarchar(max)
Column2 nvarchar(500)
您的查询看起来像
SELECT
L.Column0
, CAST(L.Column1 AS nvarchar(20)) AS Column1
, L.Column2
FROM
dbo.LookupTable L
您现在应该能够对该列执行查找。
答案 1 :(得分:2)
你不能:
联接可以是复合联接,这意味着您可以加入 转换中的多个列输入到列中的列 参考数据集。转换支持使用any连接列 数据类型,DT_R4,DT_R8,DT_TEXT,DT_NTEXT或DT_IMAGE除外
您确定正确使用该组件吗?您通常按ID查找以获取文本。 你能提供更多细节吗?