Blocs PL/SQL : Procédure, fonction, bloc anonyme
Syntaxe : Procédure
1
CREATE OR REPLACE PROCEDURE nom_proc
2
IS
3
...
4
BEGIN
5
...
6
[EXCEPTION]
7
...
8
END ;
Exemple : Procédure
1
CREATE OR REPLACE PROCEDURE pHello (who VARCHAR2)
2
IS
3
BEGIN
4
DBMS_OUTPUT.PUT_LINE('Hello ' || who);
5
END;
6
/
Syntaxe : Fonction
1
CREATE OR REPLACE FUNCTION nom_func
2
RETURN type_retourné
3
IS
4
...
5
BEGIN
6
...
7
RETURN valeur;
8
[EXCEPTION]
9
...
10
END ;
Exemple : Fonction
1
CREATE OR REPLACE FUNCTION fDateDuJour RETURN date
2
IS
3
vDate date;
4
BEGIN
5
SELECT SYSDATE INTO vDate FROM DUAL;
6
RETURN vDate;
7
END;
8
/
Attention :
Le type de retourné par une fonction ne doit pas spécifier de taille :
RETURN varchar
et non
RETURN varchar(10)
http://docs.oracle.com/cd/B13789_01/server.101/b10759/statements_5009.htm
Syntaxe : Anonyme
1
[DECLARE]
2
...
3
BEGIN
4
...
5
[EXCEPTION]
6
...
7
END ;
Exemple : Script anonyme
1
SET SERVEROUTPUT ON;
2
BEGIN
3
pHello('World');
4
DBMS_OUTPUT.PUT_LINE(fDateDuJour);
5
END;
6
/