如何在Pentaho Kettle中迁移具有一致外键的表?

时间:2011-10-25 09:34:17

标签: etl pentaho kettle

我有带数据的csv文件

name, state

我想将这些数据放到表格中:

Table1{id[PK], name}
State{table1_id[FK], state}.

这里的主要问题是如何存储新创建的Table1 id并在插入State表时使用它 如何用pentaho做到这一点?

1 个答案:

答案 0 :(得分:2)

对于Table1(在您的示例中,它是维度),使用“数据仓库”选项卡中的“组合查找/更新”:

  • 尺寸字段=名称
  • stream = name
  • 中的字段
  • 技术密钥字段= id

将“组合查找/更新”连接到“插入/更新”。对状态表使用“插入/更新”(在您的示例中为事实表)

  • 查找值的键:state = state,table1_id = id;
  • 更新字段:state = state,Table1_id = id,all with Y flag for update

'组合查找/更新'检查维度表中是否存在给定字段如果是,那么如果没有数据库中的id,则会插入新值并返回新密钥。

此致 Mateusz