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 :

Debuger un Trigger


Sujet :

Développement SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Septembre 2002
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 20
    Par défaut Debuger un Trigger
    Bonjour,
    J´ai un réseau étendue (Frame Relay) avec plusieurs serveur SQL de part et d´autres et j´aimerai réaliser un trigger qui met á jour une table tab1 dans un serveur A quand une autre table tab2 subit un insert dans un serveur B (insert automatique depuis un automate PLC), j' ai réaliser le code suivant

    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
    21
    22
    23
    CREATE TRIGGER [TTRIGGER TRIG_INSERT_CONSUMPTION] ON [dbo].[gasoducto] 
    FOR INSERT
    AS
     
    Declare @code as int
    select @code = tagid from inserted
     
    if (@code = 1) or  (@code = 7) or (@code = 11)
    Begin
     INSERT OPENDATASOURCE(
    	'SQLOLEDB',
    	'Data Source=192.168.52.45;User ID=sa;Password=xxxxx'
    	).GMS_BUSSINES.dbo.GMS_GAS_CONSUMPTION
    Select code_entity = case
    		when	@code = 1	then	1
    		when	@code = 7	then 	3
    		when	@code = 11	then 	4
    		else	null
    		end ,
     ins.sampletime,4,ins.valeur
    from inserted ins
     
    End
    Le code passe bien la correccion de syntaxe, mais lorsque je fait "apply", rien ne ce passe, et encore pire l´insert auto de ma table tab2 ne se fait plus, comme si mon trigger planté et ca fesait planter aussi l´insert.
    comment puis-je voir des logs ou les messages d´erreur que provoque mon trigger, j´ai déja testé ma commande OPENDATASOURCE sur un select et elle marche sans probleme.

  2. #2
    Membre averti
    Inscrit en
    Septembre 2002
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 20
    Par défaut
    Je viens de réaliser ce code, et il marche :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
     
    insert  OPENDATASOURCE(
    	'SQLOLEDB',
    	'Data Source=192.168.52.45;User ID=sa;Password=xxxx'
    	).GMS_BUSSINES.dbo.GMS_GAS_CONSUMPTION
    Values(1,{ts '2007-03-22 00:00:00'},4,12.5)
    Est ce que vous avez une ideé ?

    merci d´avance

  3. #3
    Membre averti
    Inscrit en
    Septembre 2002
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 20
    Par défaut
    Je viens d´avoir plus de présicion sur le probleme, je viens de faire l´insert a la main dans mon serveur B, dans le query analyser ert j´ai eu l´erreur suivante :

    Server: Msg 7391, Level 16, State 1, Procedure TTRIGGER TRIG_INSERT_CONSUMPTION, Line 11
    The operation could not be performed because the OLE DB provider 'SQLOLEDB' was unable to begin a distributed transaction.
    [OLE/DB provider returned message: La nouvelle transaction ne peut pas s'inscrire dans le coordinateur de transactions spécifié. ]
    Est ce que ce n´est pas possible de faire un OPENDATASOURCE dans un trigger ????

    merci d´avance pour vos réponses

Discussions similaires

  1. Debugging de trigger
    Par Kropernic dans le forum Développement
    Réponses: 5
    Dernier message: 29/01/2013, 14h27
  2. DEBUG SQL TRIGGER
    Par Seth_75 dans le forum Développement
    Réponses: 3
    Dernier message: 02/09/2008, 19h29
  3. Debug dans un trigger
    Par awalter1 dans le forum PL/SQL
    Réponses: 4
    Dernier message: 27/06/2008, 17h39
  4. debug trigger et ps
    Par free07 dans le forum Outils
    Réponses: 2
    Dernier message: 22/08/2006, 10h35
  5. [Debug] [Trigger] erreur d'exe pas très précise
    Par viena dans le forum Langage SQL
    Réponses: 4
    Dernier message: 19/08/2005, 11h36

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