Académique Documents
Professionnel Documents
Culture Documents
END LOOP
Exemple
DECLARE
CURSOR c_emp(p_titre varchar2) IS
SELECT nom , salaire , titre
FROM e_emp
WHERE titre=p_titre;
BEGIN
FOR enr IN c_emp('&v_titre')
LOOP
DBMS_OUTPUT.PUT_LINE('Employ : '||enr.nom||' Salaire : '||enr.salaire);
END LOOP
END;
Variable curseur
COMMANDES UTILISEES
POUR VARIABLES CURSEURS
OPEN <nom_var_cur>
FOR <ordre_select> ;
FETCH <nom_var_cur>
INTO <nom_var_hte> ;
CLOSE <nom_var_cur>
END;
TRANSACTION
COMMIT
Valider une
transac.
ROLLBACK
Annuler une
transac.
SAVEPOINT
Dbuter une
sous transac.
GESTION
LOCK TABLE
Verrouiller une
table
ROLLBACK TO
Annnuler une
sous transac.
-- dbut transaction 2
-- dbut transaction 3
Dans un bloc PL/SQL, la gestion des transactions se fait entre BEGIN et END.
DECLARE
BEGIN
UPDATE e_service
SET nom='Marketing'
WHERE no=32;
COMMIT;
END;
/
OBJET STOCKE
PROCEDURE
FONCTION
PACKAGE
TRIGGER
Regroupement
d'un ensemble de
procdures et /ou
fonctions
Traitement
dclench suite
une mise
jour
Intrts des
objets stocks
D'autres procdures et
fonctions
APPEL
FONCTION/PROCEDURE
Programme
hte
PRO*
Trigger
Application
FORMS/REPORTS
LES PROCEDURES
Syntaxe
CREATE [ OR REPLACE ] PROCEDURE [<user>].<nom_proc>
(arg1 IN type1 [DEFAULT val_initiale [, arg2 OUT type2 [, arg3 IN OUT type3, ])
AS
[ Dclarations des variables locales ]
BEGIN
Contenu du bloc PLS
END [<nom_proc>];
LES PROCEDURES
Argument
IN
OUT
IN OUT
TYPE
DEFAULT
AS
Signification
Valeur par dfaut.
Argument en entre.
Elle ne tre modifie par la procdure.
Argument en sortie.
Argument en entre sortie.
Elle peut tre lue et modifie par la procdure.
Type de l'argument sans spcification de la taille.
Affecte une valeur par dfaut l'argument.
Permet la dfinition de la procdure.
IS pour les anciennes versions.
Excution
Appel dans un bloc PLS
[owner.]<nom_proc> (liste arguments rels;
Mode SQLPLUS
Suppression
LES FONCTIONS
Syntaxe
CREATE [ OR REPLACE ] FUNCTION [<user>].<nom_proc>
(arg1 IN type1 [DEFAULT val_initiale [, arg2 IN type2, ])
RETURN type_retour AS
[ Dclarations des variables locales ]
BEGIN
Contenu du bloc PLS
RETURN (var_retour );
END [<nom_proc>];
/
Excution
BEGIN
: var_PLS := [owner.]<nom_proc> (liste arguments rels);
END;
Mode SQLPLUS
Suppression
LES PACKAGES
Procdure
Fonction
Exception
Variables, constantes, curseurs
Types de variables.
Package = Encapsulation
SPECIFICATIONS
BODY
LES PACKAGES
Procdure P1
Variable P1_V1
Spcifications
"Public"
Procdure P1
Variable P1_V1
Procdure P1
Traitement P1 : Appel F1
Body
"Private"
Curseur P1_C1
Procdure P2
Traitement P2 : Appel F1
Appel P3
Fonction F1
Traitement F1 :
RETURN (F1_VAL)
Curseur P1_C1
Variable P1_V2
END;
PROCEDURE <nom_proc> (arg1 IN type1 [DEFAULT val_initiale [, arg2 OUT type2 [,
arg3 IN OUT type3, ]) ;
AS
-- variables locales
BEGIN
END;
END [<nom_package>];
SELECT text
FROM user_source
WHERE name = 'PACKAGE'
= 'PACKAGE BODY'
-- Spcifications du package
-- Corps du package
Excution
Fonctions
EXECUTE :var_externe :=<nom_package>.<nom_proc> (liste arguments rels);
SELECT <nom_package>.<nom_proc> (liste arguments rels) FROM DUAL;
Procdures
EXECUTE <nom_package>.<nom_proc> (liste arguments rels);
Variables
SELECT <nom_package>.<nom_variable> := <expression> ;
Bloc PLS
:<variable_PLS> := <mon_package>.<nom_fonction>(liste arguments);