我有一张桌子 - TableA。这也是源和目标。表没有任何主键。我正在从 TableA 中获取数据,然后对某些字段进行一些计算并在同一个 tableA 中更新它们。现在如何在没有任何主键或复合键的情况下更新数据?第二个问题 - 如果加入两个列使记录唯一,那么我如何在 informatica 中使用它?请帮助
问问题
10150 次
2 回答
1
您可以在目标中定义更新语句。有那个属性。您仍然必须使 informatica 执行更新,而不是插入。为此,您需要使用更新策略。我认为您不需要在此解决方案中对该表进行任何 PK,因为您将使用自己的更新语句,但请验证这一点。
要设置字段并为更新设置适当的 where 条件,您需要在代码中使用 :TU 别名。TU -> 表示目标之前的更新策略。
例子:
update t_table set field1 = :TU.f1 where key_field = :TU.f5
于 2012-03-20T20:57:34.707 回答
0
- 如果您不想(或不能)在数据库中的表中创建主键,您可以在 informatica 源代码中定义它
- 如果记录唯一作为两列的组合,只需将它们都标记为 informatica 源中的主键
于 2012-03-11T16:55:49.917 回答