Question

How to call an Oracle DB function on Insert

  • 7 June 2016
  • 1 reply
  • 2 views

Badge

Hi, I am trying to solve an issue, where there is a not null column, and the required input is generated by the database.

Normally, this would be achieved with something like the similar:

INSERT INTO TEST_TABLE(NAME, FUNCTIONAL_ID) VALUES ("STEVE", schemaname.getFucntionalID());

I have achieved this in the workbench using the SQL EXECUTOR by populating a variable and passing that along the workflow, however, this is not efficient when thousands of records are required to be pulled across.

Is there some way in FME, to specify this function call, so that it is handled by the database, and FME is not waiting for a response back.

Just to give you an idea, a file that previously took about 15-20 seconds, is now taking 12 minutes using SQL Executor.

Many Thanks,

Steve


1 reply

Userlevel 4

Hi

Sounds like you need to take a look at your database function and see if it can be optimized. If possible, you could consider using a sequence rather than a function, it is a lot quicker.

David

Reply