У меня есть чтение значений, возвращаемых в sql хранимых процедур для переменных в сценарии оболочки Мне удалось добиться этого с одной переменной, но не для двух переменных.
Oracle хранит процесс
PROCEDURE get_values (ip_var IN NUMBER,
op_var1 OUT VARCHAR2,
op_var2 OUT VARCHAR2)
IS
BEGIN
SELECT col1, col2
INTO op_var1, op_var2
FROM emp
WHERE emp_id = ip_var;
END;
Вызов этого процесса в Unix Bash как
sql_status=`sqlplus -silent /nolog << END
whenever sqlerror exit sql.sqlcode
whenever oserror exit -2
set pagesize 0 feedback off verify off heading off echo off scan off serveroutput on
connect $DATABASE
declare
var1 VARCHAR2(20);
var2 VARCHAR2(20);
begin
get_values($input_val, var1, var2);
end;
/
exit;
END`
Мне нужно назначить var1 и var2 в моей программе. Так как же мне этого добиться?