IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Développement SQL Server Discussion :

Trigger de mise à jour


Sujet :

Développement SQL Server

  1. #1
    Membre habitué Avatar de jubourbon
    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    540
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 540
    Points : 189
    Points
    189
    Par défaut Trigger de mise à jour
    Bonjour,

    Je souhaite écrire un trigger qui après un update mette à jour un champ de l'enregistrement mis à jour.
    Voici ma table
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    TABLE [dbo].[Item](
    	[IDItem] [int] NOT NULL PRIMARY KEY,
    	[NomItem] [varchar](100) NOT NULL,
    	[IDAction] [int] NULL,
    	[CreationDate] [date] NOT NULL,
    	[ModifciationDate] [date] NULL
    je souhaite que lorsque je met à jour un enregistrement le trigger se déclenche et mette à jour le champ modificationDate.

    Par avance merci de votre aide.
    Les meilleures sauces de salade sont sur www.sauce-salade.com
    SpBreak la pause SharePoint: SP Break

  2. #2

  3. #3
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 763
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 763
    Points : 52 554
    Points
    52 554
    Billets dans le blog
    5
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    CREATE TRIGGER E_U_ITEM
    ON [dbo].[Item]
    FOR UPDATE
    AS
    UPDATE [dbo].[Item]
    SET    [ModifciationDate] = CURRENT_TIMESTAMP
    WHERE  IDItem IN (SELECT IDItem FROM inserted)
    Par exemple !
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  4. #4
    Membre habitué Avatar de jubourbon
    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    540
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 540
    Points : 189
    Points
    189
    Par défaut
    Parfait, merci pour vos réponses rapides
    Les meilleures sauces de salade sont sur www.sauce-salade.com
    SpBreak la pause SharePoint: SP Break

  5. #5
    Modérateur

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2005
    Messages
    5 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2005
    Messages : 5 826
    Points : 12 371
    Points
    12 371
    Par défaut
    ou bien encore :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    CREATE TRIGGER E_U_ITEM
    	ON dbo.Item
    FOR UPDATE
    AS
    BEGIN
    	SET NOCOUNT ON
     
    	UPDATE		dbo.Item
    	SET		ModifciationDate = CURRENT_TIMESTAMP
    	FROM		dbo.Item AS IT
    	INNER JOIN	inserted AS I ON I.IDItem = IT.IDItem
    END
    @++

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. UpdatePanel avec Trigger (Empêcher mise à jour)
    Par Erakis dans le forum ASP.NET
    Réponses: 7
    Dernier message: 21/01/2010, 16h50
  2. Trigger de mise à jour
    Par rvaouate dans le forum Développement
    Réponses: 1
    Dernier message: 10/12/2008, 20h11
  3. Trigger de mise à jour automatique du champ inséré
    Par popovitch130 dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 06/08/2008, 09h05
  4. trigger en mise à jour
    Par k-eisti dans le forum PL/SQL
    Réponses: 4
    Dernier message: 17/01/2008, 13h54
  5. triggers insertion, mise à jour, suppression
    Par bibi_forever dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 15/05/2007, 11h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo