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 et requete


Sujet :

Développement SQL Server

  1. #1
    Membre confirmé Avatar de liliprog
    Inscrit en
    Juillet 2004
    Messages
    135
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 135
    Par défaut trigger et requete
    j'ai un trigger.
    Je veux quand il y a un update par exemple connaitre les champs qui ont été mis à jour et quelles valeurs.

    Quel est l'instruction à ecrire pour avoir ce genre d'informations?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    CREATE TRIGGER [BaseClientèle] ON [dbo].[Clientèle] 
    FOR INSERT, UPDATE, DELETE 
    AS insert into Base_Rapport values  ('Clientèle',getDate(),user,session_user,'');
    J'espere avoir été assez clair si c'est pas le cas posez moi des questions pour vous eclaircir. Je dois resoudre ce probleme assez rapidement, merci.

  2. #2
    Rédacteur
    Avatar de WOLO Laurent
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Mars 2003
    Messages
    2 741
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Congo-Brazzaville

    Informations professionnelles :
    Activité : Architecte de base de données
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2003
    Messages : 2 741
    Par défaut
    Pour que tu puisses connaître les colonnes qui ont été mise à jour, tu disposes de deux fonctions

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    IF UPDATED(NomDeColonne)
    Ou 
    IF Columns_Updated() & BitMask=Mask
    Fonce dans l'aide en ligne de SQL serveur 2000

    Découvrez la FAQ de MS SQL Server.
    La chance accorde ses faveurs aux esprits avertis !

  3. #3
    Membre confirmé Avatar de liliprog
    Inscrit en
    Juillet 2004
    Messages
    135
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 135
    Par défaut
    ok merci pour cette indication.
    Mais comment puis-je faire pour connaitre les valeurs modifiée et les récupéré pour les inscire dans une autre table?

    J'ai essayé de faire ça:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
     
    DECLARE
    @nomclient nvarchar,
     
    select 
    @nomclient=Nomclient,
    from Contacts
     
    insert into Base_Rapport values ('Contacts', getDate(),user,session_user,@nomclient);
    ça fonctionne à peu pres le seul probleme est que au lieu d'avoir le nom du client en entier je n'ai que la premiere lettre de ce nom...
    Quelqu'un a une explication?

    non c'est bon en fait j'avais oublié de mettre une capacité pour mon nvarchar
    @nomclient nvarchar(100)
    Bon voilà
    Sinon est ce que vous savez comment on peut inscrire tout ça dans un fichier texte?

  4. #4
    Rédacteur
    Avatar de WOLO Laurent
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Mars 2003
    Messages
    2 741
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Congo-Brazzaville

    Informations professionnelles :
    Activité : Architecte de base de données
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2003
    Messages : 2 741
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    select 
    @nomclient=Nomclient, 
    from Contacts
    Tu risque d'avoir toujours le même client !!!
    Fait le constat, il n'y a pas de filtre dans ta requête !!!

    Découvrez la FAQ de MS SQL Server.
    La chance accorde ses faveurs aux esprits avertis !

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

Discussions similaires

  1. [MySQL-5.6] Trigger Local et requete base distante
    Par _Agrid dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 05/04/2013, 17h52
  2. trigger after bouton à deux requetes access
    Par ma-rim dans le forum VBA Access
    Réponses: 1
    Dernier message: 22/04/2010, 22h20
  3. Recuperer une requete pour un trigger
    Par kramer Mc Barreth dans le forum PL/SQL
    Réponses: 3
    Dernier message: 16/12/2007, 22h34
  4. Problème requete avec into dans trigger
    Par Neji44 dans le forum PL/SQL
    Réponses: 4
    Dernier message: 21/06/2007, 16h06
  5. Besoin d'aide sur une requete ds un trigger
    Par ideal dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 15/02/2006, 10h05

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