sql >> Database teknologi >  >> RDS >> Oracle

Kaldning af en lagret procedure i Oracle med IN og OUT parametre

Hvis du sætter serveroutputtet i ON-tilstand før hele koden, virker det, ellers virker put_line() ikke. Prøv det!

Koden er,

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;

Og kald derefter funktionen som den er:

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


  1. Generer DEFAULT-værdier i en CTE UPSERT ved hjælp af PostgreSQL 9.3

  2. Undersøger en ORA 028513 DG4ODBC-fejl

  3. Fejl ved konvertering af masseindlæsningsdata (trunkering)

  4. hvordan forespørger man Datetime-objekt efter dato?