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

MS SQL Server Discussion :

Creation et modification d'un Trigger


Sujet :

MS SQL Server

  1. #1
    Membre émérite
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Points : 2 498
    Points
    2 498
    Par défaut Creation et modification d'un Trigger
    Bonjour

    Es-il possible avec Management Studio de verifier les Trigger existant sur une DB ?

    Pour fairre un petit test de creation d'un trigger elementaire
    J'ai écrit ceci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    CREATE TRIGGER tg_DoTotal
    ON Clark.dbo.BakMove
    AFTER INSERT
    AS
    IF @@ROWCOUNT >1
    	BEGIN	
    		PRINT 'Test Trigger'
    	END
    La commande s'execute parfaitement, je peux apres faire un ALTER mais je ne vois pas ou ce trigger a été sauvé ??

    Accessoirement le but est d'activer le triger ssi le record inséré contient une valleur déterminante.
    Est-ce possible ?
    Si oui comment faire

    Merci de votre patience !

  2. #2
    Membre émérite
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Points : 2 498
    Points
    2 498
    Par défaut
    Ok !

    J'ai trouvé le trigger est attaché a la table !
    Maintenant la deuxieme question

    Comment tester les valeurs d'un record inséré pour déclencher le trigger ?

    J'essaye de faire un truc comme ceci : tarra et bruto etant les valeurs a tester à l'insertion d'un record bakmove

    Est-ce possible ?


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    USE [Clark]
    GO
    /****** Object:  Trigger [dbo].[tg_DoTotal]    Script Date: 03/03/2011 21:18:46 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    ALTER TRIGGER [dbo].[tg_DoTotal]
    ON [Clark].[dbo].[BakMove]
    AFTER INSERT
    AS
    IF BakMove.Tarra <1 AND BakMove.Bruto<1
    	BEGIN	
    		PRINT 'Test Trigger'
    	END

  3. #3
    Invité
    Invité(e)
    Par défaut
    Une recherche aurait pu t'amener ici :
    http://msdn.microsoft.com/en-us/library/ms189799.aspx

    Pour ton problème précis :
    http://msdn.microsoft.com/en-us/library/ms191300.aspx

    Le sujet a également été traité dans le forum auparavant.

  4. #4
    Membre émérite
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Points : 2 498
    Points
    2 498
    Par défaut
    Citation Envoyé par 7gyY9w1ZY6ySRgPeaefZ Voir le message
    Une recherche aurait pu t'amener ici :
    http://msdn.microsoft.com/en-us/library/ms189799.aspx

    Pour ton problème précis :
    http://msdn.microsoft.com/en-us/library/ms191300.aspx

    Le sujet a également été traité dans le forum auparavant.
    Il est toujours tres pertinent et prudent de repondre a une question précise par le renvoi a la case bibilotheque !

    Le meilleurs apprentissage passe souvent par l'illustration simple de cas concret
    Et quand mes stagiaires me posent des questions dans mon domaine de compétence j'ai toujours la patience de leur répondre car je sais que je peux en quelques minutes les aider a leur faire gagner des heures de tatonement souvent inutiles et que le simple fait d'exprimer une connaissance acquise m'aidera moi aussi à mieux l'intégrer.

    Donc en résumé je n'ai rien appris de ta réponse car je connaissais les page de doc que tu mentionne mais elles ne m'on pas encore permis de trouver la bonne maniere de faire.
    Je continue donc en essai erreur, à moins que quelqu'un interviennent en comprenant que ce qui est le plus intéressant dans un forum ce n'est pas l'étalage des références encyclopédique mais l'expérience personelle que l'on peut transmettre

    Merci

  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 : 43
    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
    Bonjour,

    Essaies ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    ALTER TRIGGER dbo.tg_DoTotal
    	ON Clark.dbo.BakMove
    AFTER INSERT
    AS
    BEGIN
    	SET NOCOUNT ON
     
    	IF EXISTS
    	(
    		SELECT	*
    		FROM	inserted
    		WHERE	Tarra < 1
    		AND	Bruto < 1
    	)
    	BEGIN
    		PRINT 'test trigger'
     
    		-- traitement
    	END
    END
    @++

  6. #6
    Membre émérite
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Points : 2 498
    Points
    2 498
    Par défaut
    Yesss !

    Mention Speciale de compétence et de convivialité pour Elsuket !

  7. #7
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par olibara Voir le message
    Il est toujours tres pertinent et prudent de repondre a une question précise par le renvoi a la case bibilotheque !
    Le meilleurs apprentissage passe souvent par l'illustration simple de cas concret
    Et quand mes stagiaires me posent des questions dans mon domaine de compétence j'ai toujours la patience de leur répondre car je sais que je peux en quelques minutes les aider a leur faire gagner des heures de tatonement souvent inutiles et que le simple fait d'exprimer une connaissance acquise m'aidera moi aussi à mieux l'intégrer.
    Donc en résumé je n'ai rien appris de ta réponse car je connaissais les page de doc que tu mentionne mais elles ne m'on pas encore permis de trouver la bonne maniere de faire.
    Je continue donc en essai erreur, à moins que quelqu'un interviennent en comprenant que ce qui est le plus intéressant dans un forum ce n'est pas l'étalage des références encyclopédique mais l'expérience personelle que l'on peut transmettre
    De part mon cursus et mes activités, j'ai bien souvent été amené à chercher et trouver les réponses par moi-même et à passer le temps à faire mes erreurs et à passer du temps à tâtonner, ce qui est souvent plus formateur que d'avoir la réponse sous son nez.
    Pour ce qui est de la documentation MSDN, elle est tout de même fort didactique avec des exemples (parfois incorrect, ok) et mérite que l'on prenne le courage de s'y attarder... Et je vais piocher dedans quasiment quotidiennement...
    Désolé si ma manière brute ne te convient pas.

Discussions similaires

  1. MYSQL - test modification colonne dans trigger
    Par gouzou38 dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 21/05/2011, 06h39
  2. Réponses: 4
    Dernier message: 04/05/2011, 09h25
  3. [WINDOWS][Date]Creation et Modification
    Par AbdouPoulou dans le forum Windows XP
    Réponses: 1
    Dernier message: 07/07/2009, 00h22
  4. creation et modification d'un fichier texte
    Par keks42 dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 15/04/2009, 16h22
  5. Réponses: 9
    Dernier message: 09/12/2008, 10h53

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