Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Oracle存储过程在Informatica存储过程转换映射中的会话结束时运行_Oracle_Informatica Powercenter - Fatal编程技术网

Oracle存储过程在Informatica存储过程转换映射中的会话结束时运行

Oracle存储过程在Informatica存储过程转换映射中的会话结束时运行,oracle,informatica-powercenter,Oracle,Informatica Powercenter,我创建了一个Informatica映射,其源是一个文本文件,目标也是一个文本文件。我使用连接存储过程转换调用Oracle存储过程,在下一步中,我将从存储过程中加载的表中读取数据 问题是,正在加载表,但未读取表中的数据,并且在目标文件中写入零记录。我认为存储过程是在会话结束时运行的 如何使存储过程在流中而不是在会话结束时运行 如果我从SQL Developer或informatica调用,则存储过程工作正常 流量: 平面文件源->EXP trans->调用存储过程->SQL trans(在表上运

我创建了一个Informatica映射,其源是一个文本文件,目标也是一个文本文件。我使用连接存储过程转换调用Oracle存储过程,在下一步中,我将从存储过程中加载的表中读取数据

问题是,正在加载表,但未读取表中的数据,并且在目标文件中写入零记录。我认为存储过程是在会话结束时运行的

如何使存储过程在流中而不是在会话结束时运行

如果我从SQL Developer或informatica调用,则存储过程工作正常

流量:

  • 平面文件源->EXP trans->调用存储过程->SQL trans(在表上运行查询)->tgt文件
存储过程流:

  • 截断表格
  • 用一些输入数据加载表

您需要平面文件源吗?它是否包含存储过程的任何参数?如果没有:

  • 删除平面文件源
  • 为表创建源和源限定符
  • 作为预SQL的一部分运行存储过程
否则,在映射中创建两个单独的流,如:

Flat File Source -> Stored Procedure call -> Flat File Target

Source table -> Expression -> Flat File Target

您需要平面文件源吗?它是否包含存储过程的任何参数?如果没有:

  • 删除平面文件源
  • 为表创建源和源限定符
  • 作为预SQL的一部分运行存储过程
否则,在映射中创建两个单独的流,如:

Flat File Source -> Stored Procedure call -> Flat File Target

Source table -> Expression -> Flat File Target