Vous êtes sur la page 1sur 2

Aide-mémoire PL/SQL

Bloc PL/SQL DECLARE


-- Déclaration constantes/variables
BEGIN
-- Commandes/instructions
EXCEPTION
-- Traitement des erreurs à l’exécution
END ;
/ -- Exécution automatique
Déclaration de variable Nom_Variable TYPE ;
Affectation Nom_Variable := valeur ;
SELECT attribut INTO Nom_Variable FROM table ;
Tests IF condition1 THEN
-- Instructions
ELSIF condition2 THEN -- (Optionnel)
-- Instructions
ELSE -- (Optionnel)
-- Instructions
END IF;
Boucles LOOP
-- Instructions
EXIT WHEN condition ;
END LOOP;

WHILE condition LOOP


-- Instructions
END LOOP;

FOR compteur IN [REVERSE] min .. max LOOP


-- Instructions
END LOOP;
Curseurs - Déclaration CURSOR Nom_Curseur IS Requête_SQL ;

- Utilisation OPEN Nom_Curseur ;


LOOP
FETCH Nom_Curseur INTO Nom_Variable ;
EXIT WHEN Nom_Curseur%NOTFOUND ;
-- Instructions
END LOOP ;
CLOSE Nom_Curseur ;

FOR Nom_Variable IN Nom_Curseur LOOP


-- Instructions
END LOOP ;
Exceptions - Déclarer Nom_Exception EXCEPTION ;
- Déclencher RAISE Nom_Exception ;
- Traiter WHEN Nom_Exception THEN Instruction ;

Besma BEN SALAH 1 Année Universitaire : 2019/2020


Procédure - Déclaration CREATE OR REPLACE PROCEDURE Nom_proc
[(liste des paramètres formels)]
AS | IS
-- Partie déclaration
BEGIN
-- Instructions
EXCEPTION
-- Traitement des exceptions
END ;
- Appel Nom_proc [(liste de paramètres effectifs)] ;
Fonction - Déclaration CREATE OR REPLACE FUNCTION Nom_fonc
[(liste des paramètres formels)]
RETURN typeRetour AS | IS
-- Partie déclaration
BEGIN
-- Instructions
RETURN valeurRetour
EXCEPTION
-- Traitement des exceptions
END ;
- Appel nomVariable := Nom_fonc [(liste de paramètres effectifs)] ;
Package - Spécification CREATE OR REPLACE PACKAGE Nom_pack IS | AS
-- Déclaration : objets du paquetage, Procédures et fonctions
END;
- Corps CREATE OR REPLACE PACKAGE BODY Nom_pack IS | AS
-- Déclaration des objets privés
BEGIN
-- Instructions
EXCEPTION
-- Traitement des exceptions
END ;
- Utilisation Nom_pack.Nom_proc [(liste des paramètres effectifs)]
Nom_pack.Nom_fonc [(liste des paramètres effectifs)]
Trigger CREATE OR REPLACE TRIGGER Nom_trig
{BEFORE|AFTER} {INSERT|DELETE|UPDATE}
ON Nom_table [FOR EACH ROW [WHEN (condition)]]
DECLARE
-- Partie déclaration
BEGIN
-- corps du trigger
END;

Besma BEN SALAH 2 Année Universitaire : 2019/2020