目录

Search

  1. 前言
  2. 使用转换
  3. 汇总器转换
  4. 自定义转换
  5. 自定义转换函数
  6. 数据屏蔽转换
  7. 数据屏蔽示例
  8. 表达式转换
  9. 外部过程转换
  10. 筛选器转换
  11. HTTP 转换
  12. Identity Resolution 转换
  13. Java 转换
  14. Java 转换 API 引用
  15. Java 表达式
  16. Java 转换示例
  17. 联接器转换
  18. 查找转换
  19. 查找缓存
  20. 动态查找缓存
  21. 规范器转换
  22. 等级转换
  23. 路由器转换
  24. 序列生成器转换
  25. 排序器转换
  26. 源限定符转换
  27. SQL 转换
  28. 在映射中使用 SQL 转换
  29. 存储过程转换
  30. 事务控制转换
  31. 联合转换
  32. 非结构化数据转换
  33. 更新策略转换
  34. XML 转换

转换指南

转换指南

NEXTVAL 端口

NEXTVAL 端口

您可以将 NEXTVAL 连接到某个转换以针对该转换中的每行生成唯一值。 将 NEXTVAL 端口连接到下游转换或目标以生成数字序列。 如果将 NEXTVAL 连接到多个转换,集成服务将为每个转换都生成相同的数字序列。
连接 NEXTVAL 端口以基于“起始值”和“增量值”属性生成序列。 如果未将序列生成器配置为在序列范围内循环,则 NEXTVAL 端口将一直生成序列号,直到配置的“结束值”。
下图显示了一个映射,该映射所包含的序列生成器转换 NEXTVAL 端口连接到两个目标以生成主键值和外键值:
对序列生成器转换进行如下配置时,集成服务将为 T_ORDERS_PRIMARY 和 T_ORDERS_FOREIGN 目标表生成相同主键值:起始值 = 1,增量值 = 1。
将 NEXTVAL 连接到多个转换以为每个转换中的每行生成唯一值。 通过将 NEXTVAL 端口连接到下游转换或目标来生成序列号。 连接 NEXTVAL 端口以基于“当前值”和“增量”属性生成序列。 如果未将序列生成器配置为在序列范围内循环,则 NEXTVAL 端口将一直生成序列号,直到配置的“结束值”。
例如,您可以在一个映射中将 NEXTVAL 连接到两个目标以生成唯一主键值。 集成服务会为每个目标表创建一个唯一主键值列。 唯一主键值列将作为一个序列号块发送到一个目标表。 第一个目标接收序列号块后,其他目标会从序列生成器转换中接收该序列号块。
例如,对序列生成器转换进行如下配置:当前值 = 1,增量 = 1。 集成服务将为 T_ORDERS_PRIMARY 和 T_ORDERS_FOREIGN 目标表生成以下主键值:
T_ORDERS_PRIMARY TABLE: PRIMARY KEY
T_ORDERS_FOREIGN TABLE: PRIMARY KEY
1
6
2
7
3
8
4
9
5
10
如果希望多个从单个转换接收数据的目标具有
相同
值,可将序列生成器转换连接到之前的转换。 集成服务将这些值处理成一个序列号块。 从而允许集成服务将唯一值传递到转换,然后将行从转换中路由到目标。
下图显示的映射中含有一个将唯一值传递到表达式转换的序列生成器:
该映射包含一个源、一个源限定符、一个序列生成器转换、一个表达式转换和两个目标。 转换和目标处于打开状态。 源和源限定符已图标化。
表达式转换使用相同的主键值填充这两个目标。
例如,对序列生成器转换进行如下配置:当前值 = 1,增量 = 1。 集成服务将为 T_ORDERS_PRIMARY 和 T_ORDERS_FOREIGN 目标表生成以下主键值:
T_ORDERS_PRIMARY TABLE: PRIMARY KEY
T_ORDERS_FOREIGN TABLE: PRIMARY KEY
1
1
2
2
3
3
4
4
5
5
在网格上运行经过分区的会话时,序列生成器转换将根据每个分区的行数跳过某些值。