Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Wie erstelle ich eine Funktion in PL/SQL?

Um eine Funktion in PL/SQL zu erstellen, verwenden Sie CREATE OR REPLACE FUNCTION Erklärung. Nachfolgend finden Sie die Syntaxdetails und ein Beispiel.

Syntax

CREATE [OR REPLACE] FUNCTION function_name [(parameters)] 
Return data_type is
/* declare variables here */
Begin
/* write program logic here */
Return data_type;
End;

Die Klausel OR REPLACE ist optional, aber besser zu verwenden, da wir unseren Code nach den Änderungen mehrmals kompiliert haben. Wenn Ihre Funktion Parameter erfordert, geben Sie diese in Klammern an. Geben Sie den Datentyp für die Return-Klausel an, da eine Funktion einen Wert zurückgeben muss.

Beispiel

Das Folgende ist ein Beispiel einer PL/SQL-Funktion, um zwei Zahlen zu addieren und deren Summe zurückzugeben. Diese Funktion nimmt zwei Parameter vom Typ Zahl und gibt eine Zahl zurück.

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;
/

Testen Sie es mit der Select-Anweisung:

SELECT sum_two_numbers (2, 3) total FROM DUAL;

Ausgabe:

TOTAL
----------
5
1 row selected.

Testen Sie es mit 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;
/

Ausgabe:

Total is :5
PL/SQL procedure successfully completed.

Weitere Einzelheiten zu den Oracle PL/SQL-Funktionen finden Sie in Oracle Docs.

Siehe auch:

  • Oracle-Funktionsbeispiel
  • Oracle Row_Number-Funktionsbeispiel