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

Comment créer une fonction en PL/SQL ?

Pour créer une fonction en PL/SQL, utilisez CREATE OR REPLACE FUNCTION déclaration. Vous trouverez ci-dessous les détails de la syntaxe et un exemple.

Syntaxe

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

La clause OR REPLACE est facultative, mais il est préférable de l'utiliser car nous avions l'habitude de compiler notre code plusieurs fois après avoir apporté les modifications. Si votre fonction nécessite des paramètres, indiquez-les entre parenthèses. Spécifiez le type de données pour la clause de retour, car une fonction doit renvoyer une valeur.

Exemple

Voici un exemple de fonction PL/SQL pour additionner deux nombres et en renvoyer le total. Cette fonction prend deux paramètres de type nombre et renverra un nombre.

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

Testez-le à l'aide de l'instruction Select :

SELECT sum_two_numbers (2, 3) total FROM DUAL;

Sortie :

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

Testez-le en utilisant le bloc PL/SQL :

SET SERVEROUTPUT ON;

DECLARE
n_total NUMBER;
BEGIN
n_total := sum_two_numbers (2, 3);
DBMS_OUTPUT.put_line ('Total is :' || n_total);
END;
/

Sortie :

Total is :5
PL/SQL procedure successfully completed.

Obtenez plus de détails sur les fonctions Oracle PL/SQL à partir d'Oracle Docs.

Voir aussi :

  • Exemple de fonction Oracle
  • Exemple de fonction Oracle Row_Number