如何使用ssis更新数据库表?

时间:2009-10-20 08:30:02

标签: asp.net vb.net ssis

我已成功运行ssis包并将数据从第一个数据库中的一个表插入到第二个数据库中的另一个表中。但是在这种情况下插入了所有行。我已经放置了一个oledb源控件,一个字符映射控件和oledb目标control.no查询写在this.i中只指定了2个数据库中的源表和目标表。但我只需要将一个表中的一些列值传递给另一个表,而不是整个表数据。那可以做些什么?

2 个答案:

答案 0 :(得分:1)

我不太确定我是否理解你的问题,但我最近一直在研究类似的事情,这就是我需要做的事情。

  1. 运行任务>导入数据 您希望数据最终的架构 在
  2. 在我的案例中选择您的数据库来源 它是SQL Server,选择 servername,以及架构
  3. 接下来选择目标数据库和 schema,在我的例子中是SQL Server 再次
  4. 我认为下一个屏幕给出了 您可以选择数据,或 编写自己的查询。你应该 编写自己的select语句 选出你需要的栏目
  5. 您可以编辑映射的下一个屏幕 设置数据长度等
  6. 如果需要,请保存您的包裹然后运行。
  7. 在此之后我做的是将它创建的表从“Query1”重命名为更有意义的表。然后我再次通过向导,并在映射屏幕上选择“删除现有行”。这应该在运行时更新您的表而不是附加重复行

    希望这有帮助!

答案 1 :(得分:0)

根据您的问题,您应该使用SQL command作为数据访问模式,然后使用select column1, column2 from table1之类的查询。然后在目标表中,您只能映射这两列:

Data access mode as SQL command