首页 > 解决方案 > 如何通过 informatica 使用 sysdate 删除记录器

问题描述

我在 informatica 中开发了一个映射。源是文件。我需要编写一个 post sql,如果再次出现具有相同名称的文件,它将删除已经存在的数据。文件每月出现一次,命名类似于 jass_naming_yyyymm.csv .I已经写了像从选项卡中删除,其中 load_date = sysdate 但它不起作用。laod 日期是目标表中的一列 taht 存储文件中的 yyyymm。因此查询应该类似于如果具有现有 yyyymm 的文件再次出现,现有数据应该被删除和新的文件将被加载。请给出解决方案。

标签: sqlinformatica-powercenter

解决方案


Post SQL 在这里无济于事。您需要两条管道。
管道 1 - Src->exp->tgt。使用间接文件读取方法,获取文件名以从文件名中获取 yyyy_mm 部分。您需要在目标中使用“更新覆盖”选项来删除数据。使用这个逻辑 -
DELETE FROM target_table WHERE target_yyyy_mm= :TU.source_yyyy_mm 在此处输入图像描述 管道 2 - 你的映射。

高温高压


推荐阅读