Trigger et procedure stockée

ghano81 Messages postés 41 Date d'inscription samedi 21 juillet 2007 Statut Membre Dernière intervention 29 janvier 2013 - 3 févr. 2008 à 10:41
yann_lo_san Messages postés 1137 Date d'inscription lundi 17 novembre 2003 Statut Membre Dernière intervention 23 janvier 2016 - 3 févr. 2008 à 15:15
bonjour
dans mon code je devrais realiser des modifications dans ma table (update ) pr ceci jé utiliser une  procedures stockée

et un trriger apres une suppression mais le probleme qui s'impose   commeent fournir un parametre de la procedure stockée à ce trigger ????
voila à peu _prés mon code
la procedure stockée :suppDernierEnregDemande
 
le parametre dont j'en y besoin dans mon trigger  @cleDem
le trigger :TrigerSuppression
/*************************************########################################**************/




create





procedure suppDernierEnregDemande  @cleDem char(14

)


as




/*********************************************############################*********/
CREATE

TRIGGER TrigerSuppression ON Traitement_demande
AFTER
DELETE

AS

declare


@numDEM

int

declare





@resultat
nvarchar
(
50
)






declare





@date
char
(
10
)






declare





@dateconv
datetime






declare





@dateconverti
datetime






declare





@datechar
char
(
10
)




set





@resultat
=(
select
Resultat
from
Traitement_demande
where
NumD
=
@numDEM
-
1
and
CleD
=
@cleDem
)/* ici jé besoin de parametre  @cleDem de la procedure stockée */




set





@date
=(
select
Date_reelle
from
Traitement_demande
where
NumD
=
@numDEM
-
1
and
CleD
=
@cleDem
)




set





@dateconv
=
CONVERT
(
DateTime
,
@date
,
103
)




set





@dateconverti
=
dateadd
(
month
,
3
,
@dateconv
)




set





@datechar
=
convert
(
char
(
10
),
@dateconverti
,
103
)




set





@numDEM
=(
select
NumD
from
Demandeur
where
CleD
=
@cleDem
)




update





Traitement_demande
set
NumD
=
@numDEM
-
1
,
Date_prevue
=
@datechar
where
CleD
=
@cleDem



GO



 merci pr tte réponse
merci d'avance
bonne journée et good luck

1 réponse

yann_lo_san Messages postés 1137 Date d'inscription lundi 17 novembre 2003 Statut Membre Dernière intervention 23 janvier 2016 26
3 févr. 2008 à 15:15
Salut,

on ne passe pas de 'parametre' à un trigger !
On utilise les tables conceptuelles DELETED, INSERTED ect...

Si tu as un trigger de style AFTER DELETE sur une table dont les lignes contiennent un ID nommé MON_ID,
dans le trigger, on récupère l'ID de la ligne supprimée comme ceci :

declare @id_supprime int
set @id_supprime = (SELECT MON_ID from DELETED)
0
Rejoignez-nous