
trigger insert
Publicado por nicolas (4 intervenciones) el 19/01/2016 17:37:28
Buenas tardes,
estoy intentando ejecutar un bat con el siguiente trigger:
El trigger se lanza correctamente cuando la tabla [imginfo] sufre un Insert. Por otra parte, si ejecuto el bat manualmente (sin activar el trigger) también funciona correctamente. Pero... si el trigger llama al bat, entonces la base de datos queda bloqueada y ya nada puedo hacer más que reiniciar el servicio...
El archivo .bat llama a su vez a un archivo .sql, que contiene el código siguiente:
Bueno, tiene más código, pero solo con ese ya queda todo bloqueado... Sin embargo, si ejecuto el bat manualmente, la llamada al .sql funciona sin problemas...
Es posible que se produzca alguna interferencia o bucle entre el insert que provoca el trigger y el insert que se activa? No entiendo mucho, y es una de mis primeras incursiones en triggers...
Muchas gracias de antemano por su tiempo
estoy intentando ejecutar un bat con el siguiente trigger:
use[tsfd]
GO
CREATE TRIGGER autoPano
ON dbo.imginfo
AFTER INSERT
AS
BEGIN
SET NOCOUNT ON
EXEC master..xp_CMDShell 'c:\vatech\autopano\autopano.bat'
END
GO
CREATE TRIGGER autoPano
ON dbo.imginfo
AFTER INSERT
AS
BEGIN
SET NOCOUNT ON
EXEC master..xp_CMDShell 'c:\vatech\autopano\autopano.bat'
END
El trigger se lanza correctamente cuando la tabla [imginfo] sufre un Insert. Por otra parte, si ejecuto el bat manualmente (sin activar el trigger) también funciona correctamente. Pero... si el trigger llama al bat, entonces la base de datos queda bloqueada y ya nada puedo hacer más que reiniciar el servicio...
El archivo .bat llama a su vez a un archivo .sql, que contiene el código siguiente:
USE [TSFD]
create table #autoPano (chart char(32), C_Date datetime, count int)
INSERT INTO #autoPano
SELECT chart, C_Date, count (*)
FROM imginfo GROUP BY chart, C_Date
HAVING count (*) > 1;
create table #autoPano (chart char(32), C_Date datetime, count int)
INSERT INTO #autoPano
SELECT chart, C_Date, count (*)
FROM imginfo GROUP BY chart, C_Date
HAVING count (*) > 1;
Bueno, tiene más código, pero solo con ese ya queda todo bloqueado... Sin embargo, si ejecuto el bat manualmente, la llamada al .sql funciona sin problemas...
Es posible que se produzca alguna interferencia o bucle entre el insert que provoca el trigger y el insert que se activa? No entiendo mucho, y es una de mis primeras incursiones en triggers...
Muchas gracias de antemano por su tiempo
Valora esta pregunta


0