2017-03-27 39 views
1

我正在創建一個SSIS包 - 增量加載(第一次:我正在跟蹤一個視頻)我發現它知道哪些參數映射到目標列是困難的。例如,我有大約20列,我怎麼能確定我正在映射到正確的目標列?SSIS參數

如何知道哪個參數映射到哪個列?我希望這是有道理...

Update [MCS].[SironHealth].[CallLog] 
set [ID_CARD] = ?, 
[CALL_DATE] = ?, 
[CALL_PATIENT_NUMBER] = ?, 
[CALL_TYPE] = ?, 
[CALL_IN_OUT] = ?, 
where [CALL_NUMBER] = ? 

回答

1

您使用OLE.DB作爲connection type,這就是爲什麼你正在使用?parameter name每個參數,如果這樣做,你必須手動得到parameter name每個,例如,在你的情況下,parameter nameID_CARD將爲0,下一個CALL_DATE將有1個爲parameter name,因此參數名稱映射將從0到5爲您的參數從上到下。保留默認大小-1,不要忘記選擇正確的數據類型。如果你有很多?,那麼你會很困惑,在爲每個參數選擇索引號時必須非常仔細。

OR

如果使用ADO.net作爲connection type,你可以離開參數,例如@ID_CARD,這將是像set [ID_CARD] = @ID_CARD,那麼你可以使用@ID_CARDparameter name直接parameter

+1

ODBC也使用'?'作爲佔位符,但這是一個基於1的序號系統 – billinkc

+0

我遵循SQL Update命令中的列順序。所以第一列= 0等等。正如剛纔提到的。 – John

+0

@billinkc,很高興知道,thx! – LONG