SSIS参数映射

SSIS参数映射,ssis,Ssis,是否有方法将同一输入列映射到OLEDB命令对象中的多个参数,或映射到OLE目标对象中的多个目标列 要执行此操作,是否必须使用其他名称复制源列?这看起来太…蹩脚了 当我需要做这样的更新时 更新MyTable 设置foo=? 福在哪里 在两个地方使用相同的输入列,除非我创建一个输入列的副本并将两个不同的源列传递给两个不同的参数,否则我似乎无法做到这一点。据我所知,OLEDB不支持。您可以在源和目标之间插入数据转换组件,并将您想要的列映射到相同的数据类型。我认为这是可能的。如果您打开“高级编辑器”对话

是否有方法将同一输入列映射到OLEDB命令对象中的多个参数,或映射到OLE目标对象中的多个目标列

要执行此操作,是否必须使用其他名称复制源列?这看起来太…蹩脚了

当我需要做这样的更新时

更新MyTable 设置foo=? 福在哪里


在两个地方使用相同的输入列,除非我创建一个输入列的副本并将两个不同的源列传递给两个不同的参数,否则我似乎无法做到这一点。

据我所知,OLEDB不支持。

您可以在源和目标之间插入数据转换组件,并将您想要的列映射到相同的数据类型。

我认为这是可能的。如果您打开“高级编辑器”对话框并转到“最后一个”选项卡(我的电脑中没有出价,我需要对GUI进行一些猜测),则有一个部分用于配置输出列,您可以在其中创建一个新的重复列,并将其映射到与原始列相同的源。在目标任务中,可以将重复列映射到所需列

但是,如果没有该列的副本,则无法执行此操作。只是您不必使用单独的构造创建派生列。但是如果是ODBC,您可以使用参数名称进行映射(而不是像0,1,2,…)这样的参数位置,这样您就不会有问题了,好吧:)

(我知道这篇文章很旧,但我在这里找到了答案)

我遇到了这个问题,并且能够使用name映射参数。就我而言,我正在连接到Oracle

DELETE table1
WHERE table1.id = :ID_NBR 
AND table1.id NOT IN (SELECT table2.id
FROM table2
WHERE table2.id = :ID_NBR)
我没有尝试使用SQL SERVER,但我认为它可以使用@ID\u NBR参数