Posez votre question Signaler

TRIGGER SQL SERVER [Résolu]

ramdane - Dernière réponse le 5 mars 2011 à 22:00
Bonjour,
j'ai une base de donnée de trois tables reliées entre elles avec le sql server, table PRODUIT, table BON SORTIE et table DETAILBONSORTIE. je n'arrive pas a écrire un trigger qui me permet désque je saisie le champ QTESORTIE dans la table
DETAILBONSORTIE, automatiquement le champs STOCK de la table PRODUIT se met a jour, c-a-d le STOCK=STOCK-QTESORTIE.
SVP aider moi, je suis bloqué.
Merci
Lire la suite 

TRIGGER SQL SERVER »

8 réponses
Réponse
+1
moins plus
merci d'avoir répondu a mon secours,
je reformule ma question.

soit le table BONSORTIE (numbonsortie, datebs), la table DETAILBONSORTIE(numbonsortie, codeproduit,qtesortie) et la table
PRODUIT(codeproduit, description,stock).
en saisissant un BONSORTIE, je saisie aussi un enregistrement dans DETAILBONSORTIE, alors je veux un déclencheur qui
me permet désque je valide dans le champ qtesortie, la mise a jour du champ stock de la table PRODUIT se fait.
le nouveau stock ca sera stock=stock - qtesortie.

Merci de votre aide, je suis bloqué.
Ajouter un commentaire
Réponse
+1
moins plus
Comment executer une procedure stockée dans un trigger ? Merci.
Ajouter un commentaire
Réponse
+0
moins plus
Bonjour,
tu peut reformule la question mais avant il faut supprimer les relation entre les table ,par ce ke les trigger font les relation d integriter
Ajouter un commentaire
Réponse
+0
moins plus
Bonjour,
je tien de te dire ke: une ou un trigger ne peut pas etre lié a deux table ce la vous dire ke le trigger ke te sera utile c est on la lien a la table DETAILBONSORTIE ,je vait t expliquer ce la ds le code
create trigger insert
on DETAILBONSORTIE -- la table ki va declancher le trigger
for insert --au cours d insertion la table temporaire(insertede) va centenure tout les chan de la tabe DETAILBONSORTIE
as --apre le as on parle ke d SQL
if insert (qtesortie) --le trigger ila etre declancher si vous remlisser ce chan (qtesortie)
update PRODUIT --mise ajour
set stock=stock - qtesortie
from inserted -- la table tmporaire
where PRODUIT.codeproduit = inserted.codeproduit relation entre les deux table
go --sortire
dsl mais j ai pas pu teste ce code mais logiquement c juste

je ss pas sure mais essai de faire ce trigger son :
from inserted
where PRODUIT.codeproduit = inserted.codeproduit
ramdane - 31 oct. 2007 à 14:25
Bonjour,
Merci beaucoup ca a bien marcher voila le code exacte.
au faite ca a aussi marcher sans enlever les relations avec les tables.

vous etes mon sauveur!!! MILLE MERCI

CREATE TRIGGER ins_detailbs ON detailbs
FOR INSERT
AS
IF UPDATE (qtesortie)
UPDATE produit set stock=stock-qtesortie
FROM INSERTED
WHERE produit.codeproduit=inserted.codeproduit ‘ relation entre les deux tables
GO
Ajouter un commentaire
Réponse
+0
moins plus
Bonjour,
oki alore supprimer les relation entre les table est aissie de faire un trigger ki prend en compte les relation
mais teste la entre deux table comme ca tu va compendre le fonction des trigger .
et merci atoi toi aussi car moi meme j avaiot un plaisire de faire cette trigger et de savoir kk bien marcher
Ajouter un commentaire
Réponse
+0
moins plus
salut tt le monde,

svp,j ai un probleme urgent,je voulais ecrire un trigger qui fait ca:

- si la date de la commande est moins que 3 jour de la date de livraison,il doit afficher un message d erreur.

voici en bas, en detail ce qu il doit faire le trigger



Pour une commande standard (achat d’un bouquet standard), la cyberboutique
garantit la disponibilité en inventaire des items composant le
bouquet seulement si la commande a été passée au moins 3 jours avant la
date de livraison. Pour les commandes standards effectuées moins de 3
jours avant la date de livraison, c’est le client qui assume le risque. Il est
donc très important d’informer ces clients d’une éventuelle pénurie. L’état
de la commande sera alors « VINV »
Ajouter un commentaire
Réponse
+0
moins plus
a koi sér le FOR dans la creation de declancheur !!!
j croi resoudr tt lé problém !
ya t"il un repnc !?
Ajouter un commentaire
Ce document intitulé « TRIGGER SQL SERVER » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
5 extensions si vous voulez revenir à l'ancien Facebook