trigger et vérification de doublons

trigger et vérification de doublons - SQL/NoSQL - Programmation

Marsh Posté le 12-07-2005 à 14:24:38    

Bonjour,
 
Je viens de créer un trigger qui permet de copier une ligne ajouté dans une table dans une autre table d'une autre base de données (rien d'exceptionnel je le conçois)
 

Code :
  1. CREATE TRIGGER test_trigger ON [dbo].[PERSONNEL]
  2. FOR INSERT
  3. AS
  4. INSERT INTO TABLE.dbo.PERSONNEL2(NOM,PRENOM,NUMERO)
  5. SELECT NOM, PRENOM, NUMERO FROM INSERTED


 
Mon problème est que je voudrais vérifier avant de copier cette ligne qu'elle n'existe pas déjà dans la table cible ... et je ne vois pas trop comment faire  :??:  
 
merci par avance de votre aide :jap:


Message édité par davyd le 12-07-2005 à 14:25:02
Reply

Marsh Posté le 12-07-2005 à 14:24:38   

Reply

Marsh Posté le 12-07-2005 à 15:18:37    

A froid, là, comme ça, sans trop réfléchir, je dirais :
 

Code :
  1. CREATE TRIGGER test_trigger ON [dbo].[PERSONNEL]
  2. FOR INSERT
  3. AS
  4. INSERT INTO TABLE.dbo.PERSONNEL2(NOM,PRENOM,NUMERO) 
  5. SELECT NOM, PRENOM, NUMERO FROM INSERTED i
  6. WHERE NOT EXIST (select null from TABLE.dbo.PERSONNEL2 p2 where p2.nom = i.nom and p2.prenom = i.prenom)

Reply

Marsh Posté le 12-07-2005 à 16:32:42    

Ca a l'air de fonctionner merci beaucoup  :jap:

Reply

Marsh Posté le 12-07-2005 à 16:46:32    

PS si "numero" est une clé, alors vérifie plutôt ça que le couple nom prénom ;)

Reply

Marsh Posté le 12-07-2005 à 17:11:23    

Arjuna a écrit :

PS si "numero" est une clé, alors vérifie plutôt ça que le couple nom prénom ;)


 
Oui c'est vrai merci  ;)  
 
Au fait il y a juste une petite faute de frappe dans ton script : Il faut ajouter un "s" à EXIST  :)  

Reply

Marsh Posté le 12-07-2005 à 17:13:18    

c'était pour voir si tu suivais :D

Reply

Marsh Posté le 12-07-2005 à 18:05:58    

Arjuna a écrit :

c'était pour voir si tu suivais :D


 
Comme tu vois j'ai bien suivi  ;)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed