begin process at 2012 05 27 03:44:54
  Trouver un code source :
 
dans
 
Accueil > Forum > 

SQL

 > 

SQL Server, MSDE, SQL Express

 > 

Procédures Stockées

 > 

trigger et delete


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

trigger et delete

mercredi 21 avril 2010 à 17:11:36 | trigger et delete

cudenetf

bonjour, je sais pas trop si je suis dans la bonne rubrique
ma question concerne donc les triggers

j'aimerais supprimer automatiquement (avec le trigger) la ligne d'une table a partir de la suppression de la ligne d'une autre table
j'ai une table vente (pas de id specifique , sauf ke l'heure , le n° du poste de vente , le id de l'article devrait suffir)
et une "sous table" que je vais créer en meme temps pour un certain type d'article magazine contenant le n° du magazine avec id de l'article, heure , n° de poste)

je voudrais donc que si je supprime la ligne de vente ... cela supprime la ligne de vente_magazine "automatiquement" par un trigger

j'ai essayé ca :

create trigger trig_vente_ardp_deleted on vente
for delete
as
delete from vente_ARDP where va_art=deleted.v_art and va_caisse=deleted.v_caisse
and va_date=deleted.v_date
and deleted.v_poste=va_poste
and deleted.v_qte=va_qte
go

mais j'ai le message de sqlserver :

Msg 4104, Level 16, State 1, Server FRANCOISXP\SQLEXPRESS2008, Procedure trig_vente_ardp_deleted, Line 4
L'identificateur en plusieurs parties "deleted.v_art" ne peut pas être lié.
Msg 4104, Level 16, State 1, Server FRANCOISXP\SQLEXPRESS2008, Procedure trig_vente_ardp_deleted, Line 4
L'identificateur en plusieurs parties "deleted.v_caisse" ne peut pas être lié.
Msg 4104, Level 16, State 1, Server FRANCOISXP\SQLEXPRESS2008, Procedure trig_vente_ardp_deleted, Line 5
L'identificateur en plusieurs parties "deleted.v_date" ne peut pas être lié.
Msg 4104, Level 16, State 1, Server FRANCOISXP\SQLEXPRESS2008, Procedure trig_vente_ardp_deleted, Line 6
L'identificateur en plusieurs parties "deleted.v_poste" ne peut pas être lié.
Msg 4104, Level 16, State 1, Server FRANCOISXP\SQLEXPRESS2008, Procedure trig_vente_ardp_deleted, Line 7
L'identificateur en plusieurs parties "deleted.v_qte" ne peut pas être lié.

est impossible a realiser ? sinon quelle doit etre la syntaxe pour que cela fonctionne... ??

merci


lundi 10 mai 2010 à 16:19:01 | Re : trigger et delete

JeremyLecouvert

Salut,

perso je pense que le mieux est d'ajouter un identifiant dans ta sous-table et de l'ajouter comme clé étrangère dans ta table principale... tu ajoutes la contrainte ON DELETE CASCADE, et t'as même plus besoin de ton trigger.


Si l'envie te prend de travailler, assied-toi et attend qu'elle te passe! (vieux -et faux!- dicton corse)


Cette discussion est classée dans : trigger, vente, trig, deleted, ardp


Répondre à ce message

Sujets en rapport avec ce message

Triggers imbriqués et table deleted [ par SharpMao ] Bonjour à vous,J'ai un petit problèmes de trigger avec SqlServer.J'ai deux triggers imbriqués, et j'aimerais savoir s'il est possible d'accéder aux do Correction de Trigger [ par 4rocky4 ] Bonjour tout le monde,Je voudrai créer des triggers qui permettent de mettre à jour des tables sous Oracle.Par exemple, si on modifie la clef primaire select sum sur plusieurs tables [ par cudenetf ] Bonjour,j'ai un probleme qui "revient" assez fréquemment : j'aimerais des sum de plusieurs tables en meme temps ... mais je rencontre un probleme, en Need help pour créer un trigger Mysql [ par aforpien ] bonjour à tousJe souhaiterai créer un trigger qui, lorsque j'ajoute une ligne dans une table, un champ soit mise à jour dans une autre.En fait dans la Problème Trigger SQL [ par ninho44 ] Bonjour,J'ai un trigger qui n'est pas très compliqué, mais j'ai quand même un problème avec.J'ai une table RESERVATION, avec trois champs ( logement,d Mise a jour du base access en VB.net [ par ManuAntibes ] BonjourJ'ai une erreure et je n'arrive pas à la corrigée.Je souhaite modifier la colonne  'Validation_Vente ' , et faire une recherche de la ligne  av Un trigger en SQL qui ne veut pas faire ce qu'on lui demande [ par Aldo38 ] Bonjour, Débutant un peu par force dans sql (sql erveur 2005), je me suis attaqué à la génération d'un trigger qui doit réaliser la mise à jour d'une trigger [ par badrddin ] bonjourje travail sur une application de  gestion des congés en vb .net et sql serveret je plante  sur un trucj'ai un champs soldecongé et un champs d tsql trigger [ par samfp ] [b]SAM PROGRAMMER[/b] bonjour, j'ai créer une table article dont le clé est générer automoatiquement avec un trigger au niveau de l'insertion, j'ai ut Trigger et recupération des données [ par croftman ] Bonjour! Voila j'ai ce trigger : [code=autre]DELIMITER | DROP TRIGGER test| CREATE TRIGGER test BEFORE DELETE ON clients FOR EACH ROW BEGIN DECL


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
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 : 2,964 sec (4)

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