Oracle
 sql >> Base de données >  >> RDS >> Oracle

Appel d'une procédure stockée dans Oracle avec les paramètres IN et OUT

Si vous définissez la sortie du serveur en mode ON avant tout le code, cela fonctionne, sinon put_line() ne fonctionnera pas. Essayez !

Le code est,

set serveroutput on;
CREATE OR REPLACE PROCEDURE PROC1(invoicenr IN NUMBER, amnt OUT NUMBER)
AS BEGIN
SELECT AMOUNT INTO amnt FROM INVOICE WHERE INVOICE_NR = invoicenr;
END;

Et ensuite appelez la fonction telle quelle :

DECLARE
amount NUMBER;
BEGIN
PROC1(1000001, amount);
dbms_output.put_line(amount);
END;