SOUS ORACLE : |
En SQL Server : |
---|---|
CREATE [OR REPLACE] PROCEDURE [schema .] procedure [ ( argument [ IN | OUT | IN OUT ] [ NOCOPY ] type_donnee [, argumentN [ IN | OUT | IN OUT ] [ NOCOPY ] type_donnee] ) ] [ AUTHID { CURRENT_USER | DEFINER }] { IS | AS } { instruction_pl/sql | instruction_langage }; Exemple : CREATE PROCEDURE Ajout_Enregistrement ( @proc_ID IN CHAR(10), @proc_Nom IN VARCHAR(20), @proc_Prenom IN VARCHAR(20), @proc_CP IN CHAR(5) ) AS BEGIN INSERT INTO Fiche_Personne (@proc_ID, @proc_Nom, @proc_Prenom, @proc_CP) VALUES (0000075036, ANTONIN, Jacques, 93300) END; NOTE : Les procédures stockées peuvent être appelées au moyen de l'instruction EXECUTE à partir d'une autre procédure ou d'un lot d'instructions. EXECUTE Procedure @Parametre = Valeur, ..., @ParametreN = ValeurN |
Utilisation de l'abréviation EXEC EXEC Nom_procédure [liste paramètres] Program eddi02 wrep string ; Record type Wbuveur WNb integer ; Wname string ; Wadr string ; End Record ; Exec SQL DECLARE SECTION End exec ; CONST Wnv = 100 ; Var Wbuv Wbuveur ; Var Wqté Integer ; Var Wcode SQLCode ; Exec SQL END DECLARE SECTION End exec ; Exec SQL Declare Wpart CURSOR for Select NumBuv,Nom,Adresse From Buveur Where adresse like ' %lille%' End Exec ; Begin Exec SQL OPEN wpart END EXEC ; While Wcode<> 99 DO BEGIN Exec SQL FETCH wpart INTO Wbuv End exec ; ....etc... |