1

我有一个在 Oracle 中创建表的 Informatica 数据同步任务。我正在尝试在 Informatica Cloud 的后处理命令中包含对 Oracle 存储过程的调用,该命令将在任务完成时更新各种表。我试图调用的过程与同步任务的目标在同一架构中。当我直接在 Oracle SQL Developer 中运行该过程时,它可以正常运行,但我无法通过 Informatica Cloud 运行它。我知道我没有使用正确的语法进行调用,但这些是我迄今为止尝试过的一些示例:

BEGIN
(PROCEDURE_NAME)
END;

CALL(PROCEDURE_NAME);

EXEC(PROCEDURE_NAME);

PROCEDURE_NAME;

在 Informatica Cloud 中设计映射对我有帮助吗?或者是否有我应该附加到存储过程调用的前缀,即使该过程与任务的目标在同一架构中?

4

1 回答 1

0

这些选项都不适用于同步任务。调用(procedure_name);将在 Mappings 中工作,这是最简单的方法

在同步任务中,您需要创建一个批处理文件来运行 SQL 脚本。该脚本必须包含连接详细信息。示例:connect user/password@exec (procedure_name); 断开; 退出 SQL.SQLCODE

使用 SQL.SQLCODE 以便提交所有事务。

之后,需要使用 .bat 使用 sqlplus 客户端运行上述 sql 脚本。示例: cd \bin call cmd.exe /C "sqlplus /nolog < {步骤 2 中创建的 sql 脚本的路径}\filename.sql" exit /b 0;

于 2020-05-14T00:48:30.533 回答