db2 在IBM datastage中生成序列号

byqmnocz  于 2022-12-26  发布在  DB2
关注(0)|答案(1)|浏览(460)

我有一个生成序列号的请求,应该按以下方式完成
1.从序列跟踪器表中检索初始值
1.使用该值作为序列号,并在更新时将其作为列添加到另一个并行进程中。
1.作业完成后,应在跟踪器表中更新最大值,以便在下次运行时从该数字开始
示例
跟踪器表中的初始值:1
存储的数据应为
阿一B二丙三
3现在将存储在跟踪器表中,因此初始值现在为3
下次作业运行
阿4 B 5巴6
等等
我是datastage的新手,所以我尝试过使用inrownum和分区公式,但我不知道如何使用。

0s0u357o

0s0u357o1#

你可以在Db2中使用一个SEQUENCE(对象)来代替一个表--Db2中的序列用来生成唯一的数字。当然,表也是可以的。
在Datastage中,对表执行查找或使用引用Db2序列的surrogate key generator stage。需要在始终为true的人工列上定义查找,以丰富数据。使用转换器修改通过添加+1,并使用update将其写入表的最后一行(如果选择了表),或者在Db2中执行alter序列来设置新值。
请注意,在处理该值之前或再次写出该值之前,应该有一个+1,以避免将上一次运行的最后一个数字用作下一次运行的第一个值。

相关问题