Récupérer une variable OUT dans procédure
Bonjour,
je viens de créer et tester une procédure qui me renvoie un "OUT number"
la voici :
Code:
1 2 3 4 5
|
CREATE OR REPLACE PROCEDURE getnextval(idval OUT number, nomseq varchar2) IS
BEGIN
execute immediate 'SELECT '||nomseq||'.NEXTVAL FROM DUAL' INTO idval;
END; |
jusqu'ici tout va bien.
Mon problème vient lors de l'appel de cette procédure dans une requête :
Code:
1 2
|
INSERT INTO TAB1 (col1, col2,col3) SELECT * FROM (SELECT var1, var2 ,GETNEXTVAL(idval,'ma_seq') FROM TAB2) |
je ne sais pas comment récupérer directement mon "idval OUT" à la place de GETNEXTVAL(...)
Comment dois-je procéder pour l'appel de cette procédure?
des idées ?
Merci d'avance
ps :
l'appel via sqlplus me renvoie "PL/SQL procedure sucexxfully completed", mais n'affiche pas la valeur retournée à l'écran :
Code:
1 2 3 4 5 6 7
|
declare
idval number;
begin
getnextval(idval,'ma_seq');
dbms_output.put_line(idval);
end; |