Comment créer un trigger pour savoir qui a modifier l'enregistrement ?

Résolu
Najdar Messages postés 29 Date d'inscription mardi 4 novembre 2003 Statut Membre Dernière intervention 20 mars 2006 - 7 févr. 2005 à 16:06
Najdar Messages postés 29 Date d'inscription mardi 4 novembre 2003 Statut Membre Dernière intervention 20 mars 2006 - 7 févr. 2005 à 18:13
Bonjour,
Pour enregistrement d'une table je souhaite connaitre :
- La date et heure d'insertion et l'utilisateur qui à fait l'insertion.
- La date et heure du dernier update et l'utilisateur qui à fait le dernier update.

Je pense qu'il faut utiliser un trigger qui doit mettre à jour les champs correspondant dans la table.
Quelqu'un serait-il comment écrire le/les trigger ?

Merci d'avance

3 réponses

Najdar Messages postés 29 Date d'inscription mardi 4 novembre 2003 Statut Membre Dernière intervention 20 mars 2006
7 févr. 2005 à 18:13
Finalement j'ai trouvé tout seul !
Pour ceux que ça intéresse :

Pour l'insertion :
CREATE TRIGGER DateINS ON ACTIONS_A_EFFECTUER
FOR INSERT
AS
UPDATE ACTIONS_A_EFFECTUER
SET DateInsertion = GETDATE(),
DateMiseAJour = GETDATE(),
UserInsertion=Left(SUSER_SNAME(),50),
UserMiseAJour=Left(SUSER_SNAME(),50)
WHERE ID In (Select Inserted.ID
From Inserted, ACTIONS_A_EFFECTUER
Where Inserted.ID=ACTIONS_A_EFFECTUER.ID)

Pour la mise à jour :
CREATE TRIGGER DateMAJ ON ACTIONS_A_EFFECTUER
FOR UPDATE
AS
UPDATE ACTIONS_A_EFFECTUER
SET DateMiseAJour = GETDATE(),
UserMiseAJour=Left(SUSER_SNAME(),50)
WHERE ID in (Select Inserted.ID
From Inserted, ACTIONS_A_EFFECTUER
Where Inserted.ID=ACTIONS_A_EFFECTUER.ID)
3
mrdep1978 Messages postés 402 Date d'inscription jeudi 25 novembre 2004 Statut Membre Dernière intervention 7 juin 2009 6
7 févr. 2005 à 16:21
Quelle base de données ?
0
Najdar Messages postés 29 Date d'inscription mardi 4 novembre 2003 Statut Membre Dernière intervention 20 mars 2006
7 févr. 2005 à 16:32
Avec SQLServer 2000
0