【发布时间】:2015-06-12 14:49:53
【问题描述】:
我正在创建一个 SSIS 包,它从一个表中选择前 2000 个条目并将这些条目插入到另一个表中。如何更新原始表中的这些条目(我的选择包含一个条件,通过该条件我检查状态仍然为空的位置),以便在下次运行 SSIS 包时不会导入它们?
**编辑 由于出于安全原因我无法提供 DLL,为了勾画我的场景,我有 TableA 和 TableB 共享相同的结构:
- 索引号(主键、索引、自动增量)
- 名称(varchar)
- 姓氏(varchar)
- 状态(varchar)
- 类型(varchar)
- 导入日期(日期)
在我的数据流任务中使用 OLE DB 源,以下查询用于确定我应该将哪些情况从 TableA 导入到 TableB(OLE DB 目标):
SELECT TOP(2000) *
FROM TableA
WHERE Status = ''
AND [Type] = 'New Case'
ORDER BY IndexNumber ASC
现在那些从 TableA 导入到 TableB 的案例,我想更新表 A 中的案例以不再导入它们。 TableB中的数据经常被转移到另一个数据库中,所以我不能用它来比较。
【问题讨论】:
-
请提供 DDL 以及每个表的一些示例数据。如果表格上没有某种标识符,您想要做的事情将很困难。
-
您是否需要确认他们是通过 SSIS 管道一路完成的,还是只是标记他们已被拾取?
-
我只是想添加一些更新来标记被拾取的行。
标签: sql-server ssis package