如何使用SSIS将行插入数据集中?
时间:2020-03-05 18:49:48 来源:igfitidea点击:
我正在尝试创建一个SSIS包,该包从XML数据源获取数据,并为每一行插入具有一些预设值的另一行。有任何想法吗?我在想可以通过执行以下操作使用DataReader源生成预设值:
SELECT 'foo' as 'attribute1', 'bar' as 'attribute2'
问题是,如何为XML数据源中的每一行插入这种类型的一行?
解决方案
回答
我从未尝试过,但是看起来我们也许可以使用派生列转换来做到这一点:将attribute1的表达式设置为" foo",而attribute2的表达式设置为" bar"。
然后,我们将转换原始数据源,然后仅在目的地中使用派生的列。如果仍然需要原始源,则可以对其进行多播以创建副本。
根据文档,至少我认为这会起作用。 YMMV。
回答
我不确定我是否理解这个问题...我的假设是,我们有n条记录从数据源进入SSIS,并且我们希望输出具有n * 2条记录。
为此,我们可以执行以下操作:
- 多播以创建输入数据的多个副本
- 派生列转换以在副本上设置"预设"值
- 种类
- 合并
如果我们要完成什么工作,我是否走在正确的轨道上?
回答
我可能会转而使用脚本任务并将逻辑放在其中。我们可能仍然可以利用SSIS中的文件读取和其他对象来保存一些代码。