Chcete-li vytvořit funkci v PL/SQL, použijte CREATE OR REPLACE FUNCTION prohlášení. Níže jsou uvedeny podrobnosti o syntaxi a příklad.
Syntaxe
CREATE [OR REPLACE] FUNCTION function_name [(parameters)] Return data_type is /* declare variables here */ Begin /* write program logic here */ Return data_type; End;
Klauzule OR REPLACE je volitelná, ale je lepší ji použít, protože jsme po provedení změn kód kompilovali několikrát. Pokud vaše funkce vyžaduje parametry, uveďte je v závorkách. Zadejte datový typ pro klauzuli Return, protože funkce musí vracet hodnotu.
Příklad
Následuje příklad funkce PL/SQL pro sečtení dvou čísel a vrácení jejich součtu. Tato funkce přebírá dva parametry typu čísla a vrátí číslo.
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; /
Otestujte to pomocí příkazu Select:
SELECT sum_two_numbers (2, 3) total FROM DUAL;
Výstup:
TOTAL ---------- 5 1 row selected.
Otestujte to pomocí 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; /
Výstup:
Total is :5 PL/SQL procedure successfully completed.
Získejte další podrobnosti o funkcích Oracle PL/SQL z Oracle Docs.
Viz také:
- Příklad funkce Oracle
- Příklad funkce Oracle Row_Number