Bonjour à tous,
Je souhaite créer un trigger qui après l'insertion d'une ligne dans une table, me lance un exécutable.
trigger:
Cet exe a pour but de venir récupérer cette ligne et faire des mises à jour dans une autre base de donnée.Code:
1
2
3
4
5
6
7
8
9 CREATE TRIGGER [dbo].[trig_after_ins_atm] ON [dbo].[maTable] AFTER INSERT AS DECLARE @cmd VARCHAR(500) SELECT @cmd = 'd:\MonAppli.exe' exec master..xp_cmdshell @cmd GO
Le problème est que lorsque je fais un insert dans cette table, j'obtiens le message suivant:Code:Unhandled Exception: System.Data.SqlClient.SqlException: Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding.
Lorsque je lance la commandeà la main, ca fonctionne bien.Code:exec master..xp_cmdshell
Quelqu'un peut'il me dire pourquoi cela ne fonctionne pas? s'il y a un moyen de corriger cela?
PS: pour info, il m'est impossible d'utiliser les linked server. La base de donnée en face n'acceptant pas les transactions distribuées !!!
Base de donnée SQL SERVER 2008