2012-06-02 156 views
1

我想通過查找目標表中的NVarChar(Max)列和源表中的NVarChar(20)列來查找目標表中的id。但引發錯誤Cannot map the lookup column, 'Column1', because the column data type is a binary large object block (BLOB).NVarChar的SSIS查找(最大)列

回答

2

你不能:

的加入可以是複合加入,這意味着您可以加入轉換輸入 多列在 引用數據集列。該轉換支持任何 數據類型的連接列,除了DT_R4,DT_R8,DT_TEXT,DT_NTEXT,或DT_IMAGE

,你一定要正確使用組件?您通常通過ID查找來獲取文本。 你能提供更多細節嗎?

2

在您的查找轉換中,您需要將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 

您現在應該能夠在該列中進行查找。