【发布时间】:2015-06-04 17:49:58
【问题描述】:
我一直在构建一个 SSIS 包,用于在具有不同架构的两个数据库之间传输数据。在目标数据库中,一列具有唯一键约束,并且需要从 2 个源数据库列填充数据,例如:
SELECT (LOWER(LEFT(Col1.Column1, 5)) + LOWER(LEFT(Col1.Column2, 5)))
即每列的前 5 个字符,如果有重复,则在末尾加上一个递增的数字。
递增数字必须取决于前 10 个字符,因此每个不同的变体都有自己的递增数字。例如:
Dest.Column
阿帕帕帕1
apapapap2
apapapap3
epepepep1
埃佩佩普2
这个包也是每周运行一次,所以向 SSIS OLEDB 源添加必要的列是行不通的。
所以我的问题是:是否可以在写入目标数据库之前在 SSIS 中执行此转换,如果可以,如何?
【问题讨论】:
-
你有什么问题?
-
已编辑问题以供澄清。
-
您可以在源或目标的 SQL 中执行此操作吗?在 SSIS 中这样做似乎没有必要。
-
我还建议在从您的源读取的 SQL 语句中执行此操作。
-
我想得越多,你似乎就越应该重新考虑这个要求。可能有一种更简单的方法可以实现本专栏的目的,除非您确实需要这些特定的信息序列。
标签: ssis