begin process at 2010 03 16 08:55:37
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Triggers

 > TRIGGER DE MAJ

TRIGGER DE MAJ


 Information sur la source

Note :
Aucune note
Catégorie :Triggers Niveau :Débutant Date de création :02/01/2009 Vu / téléchargé :4 622 / 222

Auteur : softnour

Ecrire un message privé
Commentaire sur cette source (0)
Ajouter un commentaire et/ou une note

 Description

Cliquez pour voir la capture en taille normale
ce trigger mise a jour le stock apres l insertion ou sepretion oubien la modification du ligne de commande

Source

  • create database exercice
  • -- creation de latable article
  • create table article(
  • numart int primary key,
  • stock int)
  • -- creation de latable ligne commande
  • create table lgcommande(
  • numlgcmd int primary key,
  • lgart int foreign key references article,
  • quantite int)
  • ---------------------------------------------------------------------
  • -- Ce trigger va mettre a jour les stocks des articles qui sont suivi en lgcommande
  • create trigger majarticle
  • on lgcommande
  • after delete,insert ,update
  • as
  • begin
  • declare @s int,@lgart int,@q int
  • select @lgart =lgart,@q=quantite from deleted
  • update article
  • set stock=stock+@q where @lgart=numart
  • set @q=0
  • select @lgart =lgart,@q=quantite from inserted
  • select @s=stock from article where @lgart=numart
  • if @s< @q
  • begin
  • print 'desole stock n est pas disponible commadez une quantite<= '+convert(varchar,@s)
  • rollback transaction
  • end
  • else begin
  • update article
  • set stock=stock-@q where @lgart=numart
  • end
  • end
  • -----------------------------------------------------------------------------
  • /* Exemple de l'execution du trigger */
  • select * from lgcommande
  • select* from article
  • insert into article values(1,100)
  • insert into lgcommande values(65,1,26)
  • select * from lgcommande
  • select* from article
  • delete from article where numart=1
  • select * from lgcommande
  • select* from article
  • delete lgcommande where numlgcmd=65
  • select * from lgcommande
  • select* from article
  • update lgcommande
  • set quantite=11
create database exercice

-- creation de latable article
create table article(
numart int primary key,
stock int)
-- creation de latable ligne commande

 create table lgcommande(
numlgcmd int primary key,
lgart int foreign key references article,
 quantite int) 
---------------------------------------------------------------------
-- Ce trigger va mettre a jour les stocks des articles qui sont suivi en lgcommande

create trigger majarticle
on lgcommande
after delete,insert ,update
as
begin
declare @s int,@lgart int,@q int
select @lgart =lgart,@q=quantite from deleted
update article
set stock=stock+@q where @lgart=numart
set @q=0
select @lgart =lgart,@q=quantite from inserted
select @s=stock from article where @lgart=numart
if @s< @q 
begin
print 'desole stock n est pas disponible commadez une quantite<= '+convert(varchar,@s)
rollback transaction
end
else begin
update article
set stock=stock-@q where @lgart=numart
end
end
-----------------------------------------------------------------------------
/* Exemple de l'execution du trigger */
select * from lgcommande
select* from article

insert into article values(1,100)
insert into lgcommande values(65,1,26)

select * from lgcommande
select* from article

delete from article where numart=1
select * from lgcommande
select* from article

delete lgcommande where numlgcmd=65

select * from lgcommande
select* from article

update lgcommande
set quantite=11


 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Sources de la même categorie

ENREGISTRER LES MISES À JOUR DE CHAQUE PERSONNE CONNECTÉ SUR... par witch17
SQL SERVER 2005 : HISTORISER LES PROCÉDURES STOCKÉES D'UNE B... par skweeky
VALIDATION DU FORMAT DU N° DE TÉLÉPHONE AVEC TSQL par bad_smi
Source avec Zip GESTION DE STOCK À L'AIDE D'UN TRIGGER [SQL SERVER 2000] par Draven

Commentaires et avis

Aucun commentaire pour le moment.

 Ajouter un commentaire




Nos sponsors


Sondage...

Comparez les prix


HTC Magic

Entre 429€ et 429€

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,608 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales