Я не уверен, как установить переменные в хранимой процедуре, которая вызывает другую хранимую процедуру. Я хочу сохранить возвращаемое значение и использовать его позже в другом select.pl sql set variable в процедуре
Я хочу сделать что-то вроде этого:
PROCEDURE procName(bcur OUT IssCur)
IS
cur2 IssCur;
extCur IssCur;
exlineno varchar2(30);
BEGIN
exlineno :=getExternlineno(exlineno,'50036648','00060');
open cur2 for SELECT concat(SUBSTR(susr2, 0, INSTR(susr2, '-')-1),'') from OrderDetail;
хранимая процедура для вызова
PROCEDURE getExternlineno(
oRetValue OUT varchar2,
pKey IN varchar2,
poNum IN varchar2)
AS
Begin
select externlineno into oRetValue from podetail where pokey = pKey and polinenumber = poNum;
end getExternlineno;
однажды я выяснить, как сделать это, то я могу сломать что-то вроде этого (который не понимает название проса:
SELECT concat(concat(SUBSTR(susr2, 0, INSTR(susr2, '-')-1),''),' - ' || getExternlineno(exlineno,'50036648','00060')) from OrderDetail;
Вы должны объявить 'getExternlineno 'как функция, а не процедура. –
Либо вы используете значение по ссылке ('oRetValue OUT varchar2'), то вам не нужно' exlineno: = 'в вызывающей процедуре, или вы делаете это, как сказал Егор. В вашем случае функция выглядит лучше ... – Trinimon
Идём функцию. –