Gebruik CREATE OR REPLACE FUNCTION om een functie in PL/SQL aan te maken. uitspraak. Hieronder staan de syntaxisdetails en een voorbeeld.
Syntaxis
CREATE [OR REPLACE] FUNCTION function_name [(parameters)] Return data_type is /* declare variables here */ Begin /* write program logic here */ Return data_type; End;
Clausule OR REPLACE is optioneel, maar het is beter om te gebruiken omdat we onze code meerdere keren hebben gecompileerd nadat we de wijzigingen hebben aangebracht. Als uw functie parameters vereist, geeft u deze tussen haakjes op. Geef het gegevenstype op voor de Return-clausule, omdat een functie een waarde moet retourneren.
Voorbeeld
Het volgende is een voorbeeld van een PL/SQL-functie om twee getallen op te tellen en het totaal ervan te retourneren. Deze functie gebruikt twee parameters van het type nummer en geeft een getal terug.
CREATE OR REPLACE FUNCTION sum_two_numbers (p_n1 IN NUMBER, p_n2 IN NUMBER) RETURN NUMBER IS BEGIN RETURN (p_n1 + p_n2); END; /
Test het met Select Statement:
SELECT sum_two_numbers (2, 3) total FROM DUAL;
Uitvoer:
TOTAL ---------- 5 1 row selected.
Test het met PL/SQL Block:
SET SERVEROUTPUT ON; DECLARE n_total NUMBER; BEGIN n_total := sum_two_numbers (2, 3); DBMS_OUTPUT.put_line ('Total is :' || n_total); END; /
Uitvoer:
Total is :5 PL/SQL procedure successfully completed.
Krijg meer details over de Oracle PL/SQL-functies van Oracle Docs.
Zie ook:
- Voorbeeld van Oracle-functie
- Oracle Row_Number functievoorbeeld