I have done the following process to get a result set from SQL server and then call a stored procedure to update records in Oracle in SSIS.
First I created an Execute SQL task with select statement in SQL server and then using full result set to set it to a variable data type Object. Do the mappings for variable as output.
Secondly I add a forloop container
Thirdly, in the forloop container I use another execute SQL task to call a stored procedure in Oracle server which is a ADO.net connetion.
I also add the variable and parameter mappings. And give the name of the paramenter the same like in Oracle.
the statement in executes SQL task is like below:
DECLARE
outputString VARCHAR(100);
begin
Product_update(@p_productID,
@p_ProductName,
@p_productPrice,
@return_completed=>outputString);
dbms_output.put_line(outputString);
End;
It failed with the following message:
[Execute SQL Task] Error: Executing the query "DECLARE
outputString VARCHAR(100);
begin
"failed with the following error: "ORA-01036: illegal variable name/number
". Possible failure reasons: Problems with the query, "ResultSet" property not set correctly, parameters not set correctly, or connection not established correctly.
This stored procedure have both input and output parameters, so does my syntax above correct?
I really don't care about the output parameter as long as it succeed.
Any help please?
SQLFriend