问题
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
, ...
来源:https://stackoverflow.com/questions/1137355/alias-parameters-in-ssis