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 :

Déclencheur avec variable sur deux colonnes


Sujet :

Développement SQL Server

  1. #1
    Membre expérimenté

    Homme Profil pro
    Auditeur informatique
    Inscrit en
    Novembre 2014
    Messages
    815
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Auditeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2014
    Messages : 815
    Points : 1 350
    Points
    1 350
    Billets dans le blog
    2
    Par défaut Déclencheur avec variable sur deux colonnes
    Bonjour

    je cherche un script du déclencheur qui me permet de faire un update sur un colonne a la présence d'une condition
    le principe est simple

    ci joint mon tableau
    nm prn uforg ufaff etat_aff eta_org etat_rh

    SADO IMED Process U1 Informatique Accepté Accepté En cours
    JLASSI RAMZI Process U1 Informatique Accepté Accepté En cours
    BRAHI CHERIF Process U1 Informatique Accepté Accepté En cours
    JLASSI HELMI Process U1 Informatique Accepté Accepté En cours

    Ma demande si la valeur du colonne uforg est égale a la valeur du colonne ufaff et la valeur du colonne etat_aff='accepté' alors la clone etat_org doit avoir la valeur Accepté et la colone etat_RH doit avoir la valeur 'en cours'
    Pour info je suis débutant en transact sql et je suis entrain de faire une formation sur ce langage
    merci pour nos expert

  2. #2
    Invité
    Invité(e)
    Par défaut
    Qu'est ce que vous avez essayé ?

  3. #3
    Membre expérimenté

    Homme Profil pro
    Auditeur informatique
    Inscrit en
    Novembre 2014
    Messages
    815
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Auditeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2014
    Messages : 815
    Points : 1 350
    Points
    1 350
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par 7gyY9w1ZY6ySRgPeaefZ Voir le message
    Qu'est ce que vous avez essayé ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    create trigger tmp_mutation 
    on RessHum_Mutation
    after update 
    as 
    declare @uf_org varchar(50)
    declare @uf_uff varchar(50)
    set @uf_org=uforg
    set @uf_uff=ufaff
    update RessHum_Mutation
    set 	etat_org='Accepté' and	etat_rh='En cours'
    where @uf_uff=@uf_org and etat_aff='accepté'

  4. #4
    Invité
    Invité(e)
    Par défaut
    C'est n'importe quoi votre truc.
    Visiblement vous n'avez même pas testé pour garder des erreurs de syntaxes de bases du T-SQL et du SQL.

    Lisez-ça pour commencer : http://msdn.microsoft.com/fr-ca/library/ms189799.aspx
    et http://sqlpro.developpez.com/cours/s...ransactsql/#L5

  5. #5
    Membre expérimenté

    Homme Profil pro
    Auditeur informatique
    Inscrit en
    Novembre 2014
    Messages
    815
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Auditeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2014
    Messages : 815
    Points : 1 350
    Points
    1 350
    Billets dans le blog
    2
    Par défaut
    J'ai insisté dans ce forum en disant que je suis débutant et loin d’être un développeur transact et si j'ai posté dans ce forum car je n'ai pas abouti à un résultat

    Donc stp soit vous m'aidez ou vous ne faites pas des remarques de ce type "C'est n'importe quoi votre truc. "

  6. #6
    Membre éclairé Avatar de GeekMokona
    Femme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Novembre 2011
    Messages
    327
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 44
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2011
    Messages : 327
    Points : 817
    Points
    817
    Par défaut
    Bonjour abdallah_mehdoini,

    Plusieurs trucs :
    - un trigger travail de manière ensembliste et non ligne à ligne : il faut utiliser les tables inserted et deleted qui contiennent respectivement les lignes insérées ou les lignes supprimées lors de l'action qui a déclenché le trigger . ils est donc souhaitables de faire des jointures sur ces tables
    - La réaction 7gyY9w1ZY6ySRgPeaefZ est compréhensible en regardant cette ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    set 	etat_org='Accepté' and	etat_rh='En cours'
    Si vous avez testé votre requête ou votre trigger , la SSMS à du vous remonter une erreur au niveau du 'and' qui est un operateur de condition et qui n'a rien à faire ici. Si vous souhaiter modifier ces 2 colonnes , remplacez le par une virgule ....
    -idem pour les lignes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    set @uf_org=uforg
    set @uf_uff=ufaff
    D'où viennent Uforg et Ufaff , si ils viennent des lignes updaté et que se sont les nouvelles valeur regardez la table inserted
    - Ah d'un dernier Est-ce que ce trigger ne devrais pas s'appliquer aussi à l'insertion ???

    Regardez les liens fournis par 7gyY9w1ZY6ySRgPeaefZ et testez votre requête !! une fois cela fait si vous avez des questions pas de soucis mais respectez les règles du forum ...
    Séverine Capon - Consultante MS BI
    Rejoignez la communauté du chat et partagez vos connaissances ou vos questions avec nous

    Merci de dés que le commentaire vous a aidé ou de marquer si votre problème est résolu

Discussions similaires

  1. Petit souci avec DISTINCT sur deux colonnes
    Par Nuks1304 dans le forum Langage SQL
    Réponses: 5
    Dernier message: 08/01/2013, 14h28
  2. [MySQL] Afichage sur deux colonnes avec des images
    Par fmathiot dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 26/12/2012, 12h14
  3. Réponses: 3
    Dernier message: 13/01/2012, 11h58
  4. Réponses: 7
    Dernier message: 08/08/2011, 11h42
  5. Fonction INDIRECT avec variable sur n° de colonne
    Par mat.guillaume dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 30/08/2006, 18h04

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