【发布时间】:2015-07-28 17:55:11
【问题描述】:
【问题讨论】:
-
使用 OLEDB 命令转换。
-
你能详细说明一下吗?
-
您是想用固定值更新您在“OLE DB 源”中引入的同一个表,还是要将固定值插入到不同的目标表或其他什么?跨度>
标签: sql-server ssis split conditional derived
【问题讨论】:
标签: sql-server ssis split conditional derived
假设您的源表中有列 col_pk、col1、col2、col3、col4 的表 Test。 col_pk 是主键,col1 和 col3 有错误。
我假设通过“包含错误放置字段的错误的现有表行”您想要更新您在 OLE DB 源中使用的同一个表
现在在派生列转换之后说你已经纠正了错误并且你有 2 个新列 col1_new 和 col3_new
(您也可以给它们起相同的名称并替换现有的列, 此替换将是 SSIS 内部的,不会影响您的数据库,写这个是因为我不清楚问题,您可能会感到困惑 在此替换中)
你现在需要做什么:
在控制流中,创建一个执行 SQL 任务并在那里编写一个查询来更新测试表,例如:
更新测试
SET col1 = Col1_new,Col2 = Col2_new
来自测试
INNER JOIN 测试_新
开启 Test.col_pk = Test_new.col_pk
就是这样!
【讨论】: