如何更新非主键表中的数据

时间:2012-02-25 13:02:27

标签: informatica-powercenter informatica

我有一张桌子 - TableA。这也是源和目标。表没有任何主键。我从TableA获取数据,然后在某些字段上进行一些计算并在同一个表A中更新它们。现在,当没有任何主键或复合键时,如何更新数据?第二个问题 - 如果连接两列使记录唯一,那么我如何在informatica中使用它?Plz help

2 个答案:

答案 0 :(得分:1)

您可以在目标中定义更新语句。有这些属性。 仍然你必须使informatica执行更新,而不是插入。为此,您需要使用更新策略。 我认为你不需要在这个解决方案中对该表做任何PK,因为你将使用自己的更新语句,但请验证这一点。

要设置字段并在需要使用的条件下进行适当的更新:代码中的TU别名。 TU - >表示目标之前的更新策略。

示例:

update t_table set field1 = :TU.f1 where key_field = :TU.f5

答案 1 :(得分:0)

  1. 如果您不想(或不能)在数据库中的表中创建主键,您可以在informatica源中定义它
  2. 如果记录唯一作为两列的组合,则只将它们标记为informatica source中的主键