1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
|
CREATE OR REPLACE FUNCTION ajoutSalarie(pidSalarie integer, pNom character varying, pPrenom character varying
, pLogin character varying, pMot_de_passe character varying
, pTelephone character varying, pdroits_iddroits integer)
RETURNS integer /*Type de la valeur de retour*/
AS $$
DECLARE id integer ; /*Declaration d'une variable 'id' de type entier*/
BEGIN /*Début de la requete*/
IF pidSalarie = 0 THEN
INSERT INTO Salarie
(
idSalarie,
Nom,
Prenom,
login,
Mot_de_passe,
Telephone,
droits_iddroits
)
VALUES (DEFAULT,
pNom,
pPrenom,
plogin,
pMot_de_passe,
pTelephone,
pdroits_iddroits
)
returning idSalarie into id ;
ELSE
UPDATE Salarie
SET
Nom = pNom ,
Prenom = pPrenom ,
login = plogin,
Mot_de_passe = pMot_de_passe,
Telephone = pTelephone,
droits_iddroits = pdroits_iddroits
WHERE idSalarie=pidSalarie;
id = pidSalarie;
END IF;
RETURN(id);
END; /*Fin de la requete*/
$$ LANGUAGE plpgsql;
/*Utilisation de la fonction*/
select ajoutSalarie(0, 'test', 'test2', 'pLogin', 'pMot_de_passe', 'pTelephone', 1) ;
--select * from salarie; |
Partager