Alias parameters in SSIS

2019-06-17 03:37发布

问题:

I am using an OLE DB command in SSIS for which the SQL command looks like this:

UPDATE DBO.CLIENT
SET
    TimeZoneID = ?,
    DaylightSavingTime = ?,
    ModifiedBy = ?,
    MicrosPropertyID = ?,
    IsOffline = ?,
    GlobalReporting_MaskPatronNumberType = ?,
    GlobalReporting_PatronNumberReadableCharacters = ?,
    GlobalReporting_MaskPrimaryCardType = ?,
    GlobalReporting_PrimaryCardReadableCharacters = ?,
    BICAddedDateTime = ?,
    BICUpdatedDateTime = ?,
    IsDBInDailyBoardRate = ?
WHERE 
    ClientID = ?

When I try to do the column mappings, these parameters show up as PARAM_0, PARAM_1, PARAM_2, PARAM_3, etc. Is there a way to get them to show up as the column name?

回答1:

I found that SSIS will read column names from a stored procedure instead of the SQL command for the OLE DB command!

It will however, not ignore the @ for the parameter name and therefore the intelligent matching does not work for CustomerId vs. @CustomerId.

+1 for everybody that uses Stored Procs. :-)



回答2:

You can rename them manually in the Input/Output Properties tab (they reside under "External Columns"), but they will always instantiate to PARAM_0, PARAM_1, ...