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 :

Pb Imbrication


Sujet :

MS SQL Server

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 7
    Points : 6
    Points
    6
    Par défaut Pb Imbrication
    J'ai un probleme. Lorsque je fais un trigger sur une mise à jour et que j('effectue une mise àjour il m'indique que le niveau d'imbrication des procédures stockées.... est dépassé de quoi cela peut venir.

  2. #2
    Membre expert
    Avatar de trotters213
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    2 571
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 571
    Points : 3 145
    Points
    3 145
    Par défaut
    et bienvenu(e)
    tu peux nous montrer ton trigger et ta PS stp :

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 7
    Points : 6
    Points
    6
    Par défaut
    Voila mon trigger:
    CREATE Trigger REPLACE_COMM on ENTETE For update,insert
    as
    Declare @DEPT varchar(2)
    Select @DEPT=SUBSTRING(LIVRAISON.LI_CodePostal, 1, 2)
    from LIVRAISON
    Update ENTETE Set Commerc=@DEPT from inserted Where ENTETE.LI_No =inserted.LI_No AND @DEPT<> ENTETE.Commerc

  4. #4
    Membre expert
    Avatar de trotters213
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    2 571
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 571
    Points : 3 145
    Points
    3 145
    Par défaut
    ton erreur c'est quoi exactement ? elle s'affiche pour quelle ligne ?
    PS : pense à utiliser les balises [ code ][ /code ] quand tu insère du code comme ça c'est plus lisible (tu peux éditer ton message en cliquant sur "éditer" en haut à droite de ton mess

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 7
    Points : 6
    Points
    6
    Par défaut
    Voila mon trigger:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    CREATE Trigger REPLACE_COMM on ENTETE For update,insert 
    as 
    Declare @DEPT varchar(2) 
    Select @DEPT=SUBSTRING(LIVRAISON.LI_CodePostal, 1, 2) 
    from LIVRAISON 
    Update ENTETE Set Commerc=@DEPT from inserted Where ENTETE.LI_No =inserted.LI_No AND @DEPT<> ENTETE.Commerc
    Et il ne m'affiche pas de ligne pour cette erreur.
    J'ai l'impression que mon trigger boucle à l'infini.

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2004
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 21
    Points : 18
    Points
    18
    Par défaut
    Le code exécuté par ton trigger le redéclanche....

    Tu replie la pile et sa bug
    Logique

    Si cela est possible (a vérifié) il faut que tu déclanche ton trigger que sur certain champ (Et surtout pas sur les champs mise a jour pas ton trigger).


    Florent

  7. #7
    Rédacteur/Modérateur

    Avatar de Fabien Celaia
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2002
    Messages
    4 222
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2002
    Messages : 4 222
    Points : 19 551
    Points
    19 551
    Billets dans le blog
    25
    Par défaut
    Le mieux serait de le remplacer par

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    CREATE Trigger REPLACE_COMM on ENTETE For update,insert
    as
    Update inserted 
    Set Commerc=SUBSTRING(LIVRAISON.LI_CodePostal, 1, 2)
    from LIVRAISON
    Reste à valider la jointure entre les deux tables qui me semble peu claire
    Sr DBA Oracle / MS-SQL / MySQL / Postgresql / SAP-Sybase / Informix / DB2

    N'oublie pas de consulter mes articles, mon blog, les cours et les FAQ SGBD

    Attention : pas de réponse technique par MP : pensez aux autres, passez par les forums !

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

Discussions similaires

  1. [LG] Imbrication de If
    Par faenor dans le forum Langage
    Réponses: 8
    Dernier message: 14/09/2005, 22h33
  2. [XML] Imbrication balises/texte
    Par bourbaki2003 dans le forum XML/XSL et SOAP
    Réponses: 3
    Dernier message: 10/11/2004, 18h00
  3. [HTML]Imbrication de tableaux
    Par LhIaScZkTer dans le forum Balisage (X)HTML et validation W3C
    Réponses: 8
    Dernier message: 06/11/2004, 11h33
  4. suppression d'imbrication
    Par dor_boucle dans le forum Requêtes
    Réponses: 2
    Dernier message: 18/07/2004, 11h30
  5. [debutant] suppression d'imbrication
    Par dor_boucle dans le forum Langage SQL
    Réponses: 7
    Dernier message: 15/07/2004, 17h01

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