我想读取多个表并将其数据转储到一个文件中。我无法将表名动态传递给OLE DB数据源,它对一个表工作正常。我无法看到任何表下拉列表中的变量。要实现这一点,我正在使用这些组件:
执行SQL任务:
SELECT name FROM SYS.tables WHERE name IN('A','B')
ResultSet : Table_Name::Variable (Object Type)
ForEach循环容器:
Foreach ADO Enumerator
variable mapping: Table_Name::Variable
DataFlow任务:
OLE DB Source <---- How to pass table name dynamicallv
( I am trying to use Table name variable, but when I click on drop down I don't see any variable here, I was expecting Table_Name variable there)
Flat File Destination
流速:
答案 0 :(得分:1)
除了对象变量Table_Name之外,还需要映射一个字符串变量来保存单个表名foreach循环。这是在foreach循环枚举器的Variable Mappings中完成的。
创建字符串变量后,您将能够在Oledb组件中看到它。