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
|
CREATE OR REPLACE PROCEDURE creer_utilisateur(
nameuser VARCHAR2,
fname VARCHAR2,
mdp VARCHAR2,
langue VARCHAR2
) IS
iduser utilisateurs.id_utilisateur%TYPE;
mdps utilisateurs.mot_de_passe%TYPE;
names utilisateurs.nom%TYPE;
fnames utilisateurs.prenom%TYPE;
idlang langues.id_langue%TYPE;
libellang langues.libelle_langue%TYPE;
BEGIN
select id_utilisateur,mot_de_passe,nom,prenom,t2.id_langue,t2.libelle_langue
into iduser,mdps,names,fnames,idlang,libellang
from utilisateurs t1,langues t2
where t1.id_langue=idlang
and nameuser=names
and fname=fnames
and mdp=mdps
and langue=libellang;
if langue=libellang then
update utilisateurs set id_langue=idlang
end if;
exception
when no_data_found then
insert into langues(id_langue,libelle_langue)
values(seq_lang.nextval,langue);
insert into utilisateurs(id_utilisateur,mot_de_passe,nom,prenom,id_langue)
values(seq_user.nextval,mdp,nameuser,fname,seq_lang.currval);
END; |
Partager