我有一项任务,我试图将随机 PIN 分配给帐户。我有 SQL 代码,它会生成一个介于 1000 和 9999 之间的随机整数。我想知道是否可以将它放在 SSIS 的派生列任务中,而不是在源数据中执行?
此外,我可能可以编写一个脚本任务来完成此任务。在这一点上,这更像是一个练习,看看是否有可能,因为我有其他选择。
我有一项任务,我试图将随机 PIN 分配给帐户。我有 SQL 代码,它会生成一个介于 1000 和 9999 之间的随机整数。我想知道是否可以将它放在 SSIS 的派生列任务中,而不是在源数据中执行?
此外,我可能可以编写一个脚本任务来完成此任务。在这一点上,这更像是一个练习,看看是否有可能,因为我有其他选择。
您实际上不必更改源数据,但可以在
OLE DB Datasource
. 基本上将数据访问模式从 更改Table or view
为SQL command
或什SQL command from variable
至并创建您的语句以包含您的 PIN 码,如下所示:试验结果:
不需要派生列、脚本任务等。有意义吗?
另一种方法是将某种任意行 id 分配给您的源表,并将类似的 id 分配给您的唯一帐户 ids 表并加入,如下所示:
与上述方法类似,您可以在您的 OLE DB 源中保存此 SQL,而不会影响您的实际源数据。为了使其工作,您必须 a) 保留您的唯一帐户并为它们提供任意行 ID,并且 b) 必须有比原始记录更多的唯一帐户,例如预先生成几百万。