SSIS 中的别名参数
我在 SSIS 中使用 OLE DB 命令,其 SQL 命令如下所示:
UPDATE DBO.CLIENT
SET
TimeZoneID = ?,
DaylightSavingTime = ?,
ModifiedBy = ?,
MicrosPropertyID = ?,
IsOffline = ?,
GlobalReporting_MaskPatronNumberType = ?,
GlobalReporting_PatronNumberReadableCharacters = ?,
GlobalReporting_MaskPrimaryCardType = ?,
GlobalReporting_PrimaryCardReadableCharacters = ?,
BICAddedDateTime = ?,
BICUpdatedDateTime = ?,
IsDBInDailyBoardRate = ?
WHERE
ClientID = ?
当我尝试进行列映射时,这些参数显示为 PARAM_0、PARAM_1、PARAM_2、PARAM_3 等。有没有办法让它们显示为列名称?
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?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我发现SSIS会从存储过程中读取列名,而不是OLE DB命令的SQL命令!
但是,它不会忽略参数名称中的 @,因此智能匹配对于 CustomerId 和 @CustomerId 不起作用。
为每个使用存储过程的人+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. :-)
您可以在“输入/输出属性”选项卡中手动重命名它们(它们位于“外部列”下),但它们始终会实例化为
PARAM_0
、PARAM_1
...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
, ...