Trigger de auditoria

12/02/2004 - 22:11 por Juan F Botero | Informe spam
Saludos

Realice un trigger para llevar un auditoria de un campo en una tabla
especifica (solo con UPDATE). El trigger funciona bien , pero se me han
presentados algunos problemas desde que instale el trigger.
La tabla donde instale el trigger es actualizada constantemente por
diferentes aplicaciones y en muchos casos, pueden coincidir varias
actualizaciones en la misma tabla.
El problema es que algunas actualizaciones no se estan realizando
correctamente en la tabla, lo cual me genera perdida de datos.

La pregunta seria, si este bloqueo de las sentencias o la perdida de datos,
es porque el servidor no es capaz de llevar a cabo eficientemente todas las
operaciones requeridas por las sentencias slq y los trigger simultaneamente?
o es otra clase de problema?

Gracias por sus comentarios.

Preguntas similare

Leer las respuestas

#6 Maximiliano Damian Accotto
13/02/2004 - 00:45 | Informe spam
no deberia pasar eso, no conozco las tablas pero puede ser que no tengas
indices quizas? y ahi se ponga lento la cosa, tomaste el tiempo de cuanto
tarda el Trigger?

fijate eso, porque el bloqueo si lo hace pero hay que ver si tu aplicacion
cuando detecta eso espera cuanto tiempo o que hace.


Salu2 enormes

Maximiliano Damian Accotto

Fundicion San Cayetano S.A.
Gerente de IT
Buenos Aires - Argentina
-
Desarrollador 3 estrellas
http://www.microsoft.com/spanish/ms...efault.asp
-
(maxi_accotto[arroba]speedy.com.ar)
MSN:
"Juan F Botero" escribió en el mensaje
news:O%
CREATE TRIGGER [auditoria] ON [ot]

FOR UPDATE

AS

IF UPDATE(nota) or UPDATE(rlinea)

INSERT INTO ot_audi(


tipo_operacion,custom,fecha_alumno,codigo_manual,nota)

select 1,ot.t_custom,ot.t_date,ot.t_codigo_manual,ot.rlinea from ot,
inserted

where ot.t_custom = inserted. t_custom and ot.t_date = inserted. t_date


and
ot.rlinea = inserted. rlinea



en la aplicacion me sale un error de bloqueo de tabla exactamente en el
update. que es lo que controlo con el trigger.

el error textual no lo tengo en este momento, pero en resumen es eso.

"Maximiliano Damian Accotto" escribió
en el mensaje news:
> el trigger no creo te hace perder datos, lo mas probable que la


aplicacion
> no este bien pensada y pierda alguna transaccion o algo asi, yo


revisaria
> con el Profiler eso.
>
> Ahora en la aplicacion cuando vos decis que se pierde el dato, no marca
> ningun error?
>
> podrias tambien pegar el codigo completo del Trigger?
>
>
> Salu2 enormes
>
> Maximiliano Damian Accotto
>
> Fundicion San Cayetano S.A.
> Gerente de IT
> Buenos Aires - Argentina
> -
> Desarrollador 3 estrellas
>


http://www.microsoft.com/spanish/ms...efault.asp
> -
> (maxi_accotto[arroba]speedy.com.ar)
> MSN:
> "Juan F Botero" escribió en el mensaje
> news:
> > lo curiosos es que hace varios años trabajo con la aplicacion y no


habia
> > tenido antes esa clase de problemas, estos aparecieron un dia despues


de
> > poner el trigger. asi que dudo mas del trigger, que de la aplicacion,
> pero
> > no se por donde atacar el problema. ademas nose de que forma se


realizan
> las
> > actualizacion, pues no tengo los fuentes de esa aplicacion.
> >
> > gracias por sus comentarios
> >
> > "Maximiliano Damian Accotto"
escribió
> > en el mensaje news:#
> > > que pierdas datos mmmm ahi hay otro problema, como haces los


updates,
> usas
> > > Transacciones? revisa bien eso porque me parece que anda por ese


lado
la
> > > cosa
> > >
> > >
> > > Salu2 enormes
> > >
> > > Maximiliano Damian Accotto
> > >
> > > Fundicion San Cayetano S.A.
> > > Gerente de IT
> > > Buenos Aires - Argentina
> > > -
> > > Desarrollador 3 estrellas
> > >
>


http://www.microsoft.com/spanish/ms...efault.asp
> > > -
> > > (maxi_accotto[arroba]speedy.com.ar)
> > > MSN:
> > > "Juan F Botero" escribió en el mensaje
> > > news:%
> > > > Saludos
> > > >
> > > > Realice un trigger para llevar un auditoria de un campo en una


tabla
> > > > especifica (solo con UPDATE). El trigger funciona bien , pero se


me
> han
> > > > presentados algunos problemas desde que instale el trigger.
> > > > La tabla donde instale el trigger es actualizada constantemente


por
> > > > diferentes aplicaciones y en muchos casos, pueden coincidir varias
> > > > actualizaciones en la misma tabla.
> > > > El problema es que algunas actualizaciones no se estan realizando
> > > > correctamente en la tabla, lo cual me genera perdida de datos.
> > > >
> > > > La pregunta seria, si este bloqueo de las sentencias o la perdida


de
> > > datos,
> > > > es porque el servidor no es capaz de llevar a cabo eficientemente
> todas
> > > las
> > > > operaciones requeridas por las sentencias slq y los trigger
> > > simultaneamente?
> > > > o es otra clase de problema?
> > > >
> > > > Gracias por sus comentarios.
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >
> > >
> > >
> >
> >
>
>


Respuesta Responder a este mensaje
#7 Juan F Botero
13/02/2004 - 01:03 | Informe spam
tendria que ver cuanto tiempo tarda, el problema es que es en algunas
transacciones donde hay problemas, yo supongo que son en donde hay mayor
concurrencia de actualizaciones. y ocurren esos bloqueos.
revisare los tiempos de espera, pero eso implicaria volver lenta la
aplicacion y a los usuarios no les va agradar mucho la idea.

"Maximiliano Damian Accotto" escribió
en el mensaje news:
no deberia pasar eso, no conozco las tablas pero puede ser que no tengas
indices quizas? y ahi se ponga lento la cosa, tomaste el tiempo de cuanto
tarda el Trigger?

fijate eso, porque el bloqueo si lo hace pero hay que ver si tu aplicacion
cuando detecta eso espera cuanto tiempo o que hace.


Salu2 enormes

Maximiliano Damian Accotto

Fundicion San Cayetano S.A.
Gerente de IT
Buenos Aires - Argentina
-
Desarrollador 3 estrellas
http://www.microsoft.com/spanish/ms...efault.asp
-
(maxi_accotto[arroba]speedy.com.ar)
MSN:
"Juan F Botero" escribió en el mensaje
news:O%
> CREATE TRIGGER [auditoria] ON [ot]
>
> FOR UPDATE
>
> AS
>
> IF UPDATE(nota) or UPDATE(rlinea)
>
> INSERT INTO ot_audi(
tipo_operacion,custom,fecha_alumno,codigo_manual,nota)
>
> select 1,ot.t_custom,ot.t_date,ot.t_codigo_manual,ot.rlinea from ot,
> inserted
>
> where ot.t_custom = inserted. t_custom and ot.t_date = inserted. t_date
and
> ot.rlinea = inserted. rlinea
>
>
>
> en la aplicacion me sale un error de bloqueo de tabla exactamente en el
> update. que es lo que controlo con el trigger.
>
> el error textual no lo tengo en este momento, pero en resumen es eso.
>
> "Maximiliano Damian Accotto"


escribió
> en el mensaje news:
> > el trigger no creo te hace perder datos, lo mas probable que la
aplicacion
> > no este bien pensada y pierda alguna transaccion o algo asi, yo
revisaria
> > con el Profiler eso.
> >
> > Ahora en la aplicacion cuando vos decis que se pierde el dato, no


marca
> > ningun error?
> >
> > podrias tambien pegar el codigo completo del Trigger?
> >
> >
> > Salu2 enormes
> >
> > Maximiliano Damian Accotto
> >
> > Fundicion San Cayetano S.A.
> > Gerente de IT
> > Buenos Aires - Argentina
> > -
> > Desarrollador 3 estrellas
> >
http://www.microsoft.com/spanish/ms...efault.asp
> > -
> > (maxi_accotto[arroba]speedy.com.ar)
> > MSN:
> > "Juan F Botero" escribió en el mensaje
> > news:
> > > lo curiosos es que hace varios años trabajo con la aplicacion y no
habia
> > > tenido antes esa clase de problemas, estos aparecieron un dia


despues
de
> > > poner el trigger. asi que dudo mas del trigger, que de la


aplicacion,
> > pero
> > > no se por donde atacar el problema. ademas nose de que forma se
realizan
> > las
> > > actualizacion, pues no tengo los fuentes de esa aplicacion.
> > >
> > > gracias por sus comentarios
> > >
> > > "Maximiliano Damian Accotto"
> escribió
> > > en el mensaje news:#
> > > > que pierdas datos mmmm ahi hay otro problema, como haces los
updates,
> > usas
> > > > Transacciones? revisa bien eso porque me parece que anda por ese
lado
> la
> > > > cosa
> > > >
> > > >
> > > > Salu2 enormes
> > > >
> > > > Maximiliano Damian Accotto
> > > >
> > > > Fundicion San Cayetano S.A.
> > > > Gerente de IT
> > > > Buenos Aires - Argentina
> > > > -
> > > > Desarrollador 3 estrellas
> > > >
> >
http://www.microsoft.com/spanish/ms...efault.asp
> > > > -
> > > > (maxi_accotto[arroba]speedy.com.ar)
> > > > MSN:
> > > > "Juan F Botero" escribió en el mensaje
> > > > news:%
> > > > > Saludos
> > > > >
> > > > > Realice un trigger para llevar un auditoria de un campo en una
tabla
> > > > > especifica (solo con UPDATE). El trigger funciona bien , pero se
me
> > han
> > > > > presentados algunos problemas desde que instale el trigger.
> > > > > La tabla donde instale el trigger es actualizada constantemente
por
> > > > > diferentes aplicaciones y en muchos casos, pueden coincidir


varias
> > > > > actualizaciones en la misma tabla.
> > > > > El problema es que algunas actualizaciones no se estan


realizando
> > > > > correctamente en la tabla, lo cual me genera perdida de datos.
> > > > >
> > > > > La pregunta seria, si este bloqueo de las sentencias o la


perdida
de
> > > > datos,
> > > > > es porque el servidor no es capaz de llevar a cabo


eficientemente
> > todas
> > > > las
> > > > > operaciones requeridas por las sentencias slq y los trigger
> > > > simultaneamente?
> > > > > o es otra clase de problema?
> > > > >
> > > > > Gracias por sus comentarios.
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >
> > > >
> > > >
> > >
> > >
> >
> >
>
>


Respuesta Responder a este mensaje
#8 Maximiliano Damian Accotto
13/02/2004 - 01:07 | Informe spam
Los tiempos de espera si los podes configurar mejor, lo de lento a los
usuarios para ellos todo siempre es lento jeej
no pongas en riesgo los datos porque los usuarios digan q es un poco mas
lento, analiza bien




Salu2 enormes

Maximiliano Damian Accotto

Fundicion San Cayetano S.A.
Gerente de IT
Buenos Aires - Argentina
-
Desarrollador 3 estrellas
http://www.microsoft.com/spanish/ms...efault.asp
-
(maxi_accotto[arroba]speedy.com.ar)
MSN:
"Juan F Botero" escribió en el mensaje
news:
tendria que ver cuanto tiempo tarda, el problema es que es en algunas
transacciones donde hay problemas, yo supongo que son en donde hay mayor
concurrencia de actualizaciones. y ocurren esos bloqueos.
revisare los tiempos de espera, pero eso implicaria volver lenta la
aplicacion y a los usuarios no les va agradar mucho la idea.

"Maximiliano Damian Accotto" escribió
en el mensaje news:
> no deberia pasar eso, no conozco las tablas pero puede ser que no tengas
> indices quizas? y ahi se ponga lento la cosa, tomaste el tiempo de


cuanto
> tarda el Trigger?
>
> fijate eso, porque el bloqueo si lo hace pero hay que ver si tu


aplicacion
> cuando detecta eso espera cuanto tiempo o que hace.
>
>
> Salu2 enormes
>
> Maximiliano Damian Accotto
>
> Fundicion San Cayetano S.A.
> Gerente de IT
> Buenos Aires - Argentina
> -
> Desarrollador 3 estrellas
>


http://www.microsoft.com/spanish/ms...efault.asp
> -
> (maxi_accotto[arroba]speedy.com.ar)
> MSN:
> "Juan F Botero" escribió en el mensaje
> news:O%
> > CREATE TRIGGER [auditoria] ON [ot]
> >
> > FOR UPDATE
> >
> > AS
> >
> > IF UPDATE(nota) or UPDATE(rlinea)
> >
> > INSERT INTO ot_audi(
> tipo_operacion,custom,fecha_alumno,codigo_manual,nota)
> >
> > select 1,ot.t_custom,ot.t_date,ot.t_codigo_manual,ot.rlinea from ot,
> > inserted
> >
> > where ot.t_custom = inserted. t_custom and ot.t_date = inserted.


t_date
> and
> > ot.rlinea = inserted. rlinea
> >
> >
> >
> > en la aplicacion me sale un error de bloqueo de tabla exactamente en


el
> > update. que es lo que controlo con el trigger.
> >
> > el error textual no lo tengo en este momento, pero en resumen es eso.
> >
> > "Maximiliano Damian Accotto"
escribió
> > en el mensaje news:
> > > el trigger no creo te hace perder datos, lo mas probable que la
> aplicacion
> > > no este bien pensada y pierda alguna transaccion o algo asi, yo
> revisaria
> > > con el Profiler eso.
> > >
> > > Ahora en la aplicacion cuando vos decis que se pierde el dato, no
marca
> > > ningun error?
> > >
> > > podrias tambien pegar el codigo completo del Trigger?
> > >
> > >
> > > Salu2 enormes
> > >
> > > Maximiliano Damian Accotto
> > >
> > > Fundicion San Cayetano S.A.
> > > Gerente de IT
> > > Buenos Aires - Argentina
> > > -
> > > Desarrollador 3 estrellas
> > >
>


http://www.microsoft.com/spanish/ms...efault.asp
> > > -
> > > (maxi_accotto[arroba]speedy.com.ar)
> > > MSN:
> > > "Juan F Botero" escribió en el mensaje
> > > news:
> > > > lo curiosos es que hace varios años trabajo con la aplicacion y no
> habia
> > > > tenido antes esa clase de problemas, estos aparecieron un dia
despues
> de
> > > > poner el trigger. asi que dudo mas del trigger, que de la
aplicacion,
> > > pero
> > > > no se por donde atacar el problema. ademas nose de que forma se
> realizan
> > > las
> > > > actualizacion, pues no tengo los fuentes de esa aplicacion.
> > > >
> > > > gracias por sus comentarios
> > > >
> > > > "Maximiliano Damian Accotto"
> > escribió
> > > > en el mensaje news:#
> > > > > que pierdas datos mmmm ahi hay otro problema, como haces los
> updates,
> > > usas
> > > > > Transacciones? revisa bien eso porque me parece que anda por ese
> lado
> > la
> > > > > cosa
> > > > >
> > > > >
> > > > > Salu2 enormes
> > > > >
> > > > > Maximiliano Damian Accotto
> > > > >
> > > > > Fundicion San Cayetano S.A.
> > > > > Gerente de IT
> > > > > Buenos Aires - Argentina
> > > > > -
> > > > > Desarrollador 3 estrellas
> > > > >
> > >
>


http://www.microsoft.com/spanish/ms...efault.asp
> > > > > -
> > > > > (maxi_accotto[arroba]speedy.com.ar)
> > > > > MSN:
> > > > > "Juan F Botero" escribió en el mensaje
> > > > > news:%
> > > > > > Saludos
> > > > > >
> > > > > > Realice un trigger para llevar un auditoria de un campo en una
> tabla
> > > > > > especifica (solo con UPDATE). El trigger funciona bien , pero


se
> me
> > > han
> > > > > > presentados algunos problemas desde que instale el trigger.
> > > > > > La tabla donde instale el trigger es actualizada


constantemente
> por
> > > > > > diferentes aplicaciones y en muchos casos, pueden coincidir
varias
> > > > > > actualizaciones en la misma tabla.
> > > > > > El problema es que algunas actualizaciones no se estan
realizando
> > > > > > correctamente en la tabla, lo cual me genera perdida de datos.
> > > > > >
> > > > > > La pregunta seria, si este bloqueo de las sentencias o la
perdida
> de
> > > > > datos,
> > > > > > es porque el servidor no es capaz de llevar a cabo
eficientemente
> > > todas
> > > > > las
> > > > > > operaciones requeridas por las sentencias slq y los trigger
> > > > > simultaneamente?
> > > > > > o es otra clase de problema?
> > > > > >
> > > > > > Gracias por sus comentarios.
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > >
> > > > >
> > > >
> > > >
> > >
> > >
> >
> >
>
>


Respuesta Responder a este mensaje
#9 Juan F Botero
13/02/2004 - 01:20 | Informe spam
gracias por tus comentarios Maximiliano

"Maximiliano Damian Accotto" escribió
en el mensaje news:#
Los tiempos de espera si los podes configurar mejor, lo de lento a los
usuarios para ellos todo siempre es lento jeej
no pongas en riesgo los datos porque los usuarios digan q es un poco mas
lento, analiza bien




Salu2 enormes

Maximiliano Damian Accotto

Fundicion San Cayetano S.A.
Gerente de IT
Buenos Aires - Argentina
-
Desarrollador 3 estrellas
http://www.microsoft.com/spanish/ms...efault.asp
-
(maxi_accotto[arroba]speedy.com.ar)
MSN:
"Juan F Botero" escribió en el mensaje
news:
> tendria que ver cuanto tiempo tarda, el problema es que es en algunas
> transacciones donde hay problemas, yo supongo que son en donde hay mayor
> concurrencia de actualizaciones. y ocurren esos bloqueos.
> revisare los tiempos de espera, pero eso implicaria volver lenta la
> aplicacion y a los usuarios no les va agradar mucho la idea.
>
> "Maximiliano Damian Accotto"


escribió
> en el mensaje news:
> > no deberia pasar eso, no conozco las tablas pero puede ser que no


tengas
> > indices quizas? y ahi se ponga lento la cosa, tomaste el tiempo de
cuanto
> > tarda el Trigger?
> >
> > fijate eso, porque el bloqueo si lo hace pero hay que ver si tu
aplicacion
> > cuando detecta eso espera cuanto tiempo o que hace.
> >
> >
> > Salu2 enormes
> >
> > Maximiliano Damian Accotto
> >
> > Fundicion San Cayetano S.A.
> > Gerente de IT
> > Buenos Aires - Argentina
> > -
> > Desarrollador 3 estrellas
> >
http://www.microsoft.com/spanish/ms...efault.asp
> > -
> > (maxi_accotto[arroba]speedy.com.ar)
> > MSN:
> > "Juan F Botero" escribió en el mensaje
> > news:O%
> > > CREATE TRIGGER [auditoria] ON [ot]
> > >
> > > FOR UPDATE
> > >
> > > AS
> > >
> > > IF UPDATE(nota) or UPDATE(rlinea)
> > >
> > > INSERT INTO ot_audi(
> > tipo_operacion,custom,fecha_alumno,codigo_manual,nota)
> > >
> > > select 1,ot.t_custom,ot.t_date,ot.t_codigo_manual,ot.rlinea from ot,
> > > inserted
> > >
> > > where ot.t_custom = inserted. t_custom and ot.t_date = inserted.
t_date
> > and
> > > ot.rlinea = inserted. rlinea
> > >
> > >
> > >
> > > en la aplicacion me sale un error de bloqueo de tabla exactamente en
el
> > > update. que es lo que controlo con el trigger.
> > >
> > > el error textual no lo tengo en este momento, pero en resumen es


eso.
> > >
> > > "Maximiliano Damian Accotto"
> escribió
> > > en el mensaje news:
> > > > el trigger no creo te hace perder datos, lo mas probable que la
> > aplicacion
> > > > no este bien pensada y pierda alguna transaccion o algo asi, yo
> > revisaria
> > > > con el Profiler eso.
> > > >
> > > > Ahora en la aplicacion cuando vos decis que se pierde el dato, no
> marca
> > > > ningun error?
> > > >
> > > > podrias tambien pegar el codigo completo del Trigger?
> > > >
> > > >
> > > > Salu2 enormes
> > > >
> > > > Maximiliano Damian Accotto
> > > >
> > > > Fundicion San Cayetano S.A.
> > > > Gerente de IT
> > > > Buenos Aires - Argentina
> > > > -
> > > > Desarrollador 3 estrellas
> > > >
> >
http://www.microsoft.com/spanish/ms...efault.asp
> > > > -
> > > > (maxi_accotto[arroba]speedy.com.ar)
> > > > MSN:
> > > > "Juan F Botero" escribió en el mensaje
> > > > news:
> > > > > lo curiosos es que hace varios años trabajo con la aplicacion y


no
> > habia
> > > > > tenido antes esa clase de problemas, estos aparecieron un dia
> despues
> > de
> > > > > poner el trigger. asi que dudo mas del trigger, que de la
> aplicacion,
> > > > pero
> > > > > no se por donde atacar el problema. ademas nose de que forma se
> > realizan
> > > > las
> > > > > actualizacion, pues no tengo los fuentes de esa aplicacion.
> > > > >
> > > > > gracias por sus comentarios
> > > > >
> > > > > "Maximiliano Damian Accotto"



> > > escribió
> > > > > en el mensaje news:#
> > > > > > que pierdas datos mmmm ahi hay otro problema, como haces los
> > updates,
> > > > usas
> > > > > > Transacciones? revisa bien eso porque me parece que anda por


ese
> > lado
> > > la
> > > > > > cosa
> > > > > >
> > > > > >
> > > > > > Salu2 enormes
> > > > > >
> > > > > > Maximiliano Damian Accotto
> > > > > >
> > > > > > Fundicion San Cayetano S.A.
> > > > > > Gerente de IT
> > > > > > Buenos Aires - Argentina
> > > > > > -
> > > > > > Desarrollador 3 estrellas
> > > > > >
> > > >
> >
http://www.microsoft.com/spanish/ms...efault.asp
> > > > > > -
> > > > > > (maxi_accotto[arroba]speedy.com.ar)
> > > > > > MSN:
> > > > > > "Juan F Botero" escribió en el mensaje
> > > > > > news:%
> > > > > > > Saludos
> > > > > > >
> > > > > > > Realice un trigger para llevar un auditoria de un campo en


una
> > tabla
> > > > > > > especifica (solo con UPDATE). El trigger funciona bien ,


pero
se
> > me
> > > > han
> > > > > > > presentados algunos problemas desde que instale el trigger.
> > > > > > > La tabla donde instale el trigger es actualizada
constantemente
> > por
> > > > > > > diferentes aplicaciones y en muchos casos, pueden coincidir
> varias
> > > > > > > actualizaciones en la misma tabla.
> > > > > > > El problema es que algunas actualizaciones no se estan
> realizando
> > > > > > > correctamente en la tabla, lo cual me genera perdida de


datos.
> > > > > > >
> > > > > > > La pregunta seria, si este bloqueo de las sentencias o la
> perdida
> > de
> > > > > > datos,
> > > > > > > es porque el servidor no es capaz de llevar a cabo
> eficientemente
> > > > todas
> > > > > > las
> > > > > > > operaciones requeridas por las sentencias slq y los trigger
> > > > > > simultaneamente?
> > > > > > > o es otra clase de problema?
> > > > > > >
> > > > > > > Gracias por sus comentarios.
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > >
> > > > > >
> > > > >
> > > > >
> > > >
> > > >
> > >
> > >
> >
> >
>
>


Respuesta Responder a este mensaje
#10 Javier Loria
13/02/2004 - 02:17 | Informe spam
Hola Juan:
El problema es el diseno del TRIGGER, estas seleccionando de vuelta las
fila en modificadas lo cual no es necesario. Creo que puedes escribirlo
como:
CREATE TRIGGER [auditoria] ON [ot]
FOR UPDATE
AS
IF UPDATE(nota) or UPDATE(rlinea)
INSERT INTO ot_audi (tipo_operacion, custom, fecha_alumno,
codigo_manual, nota)
SELECT 1, t_custom, t_date, t_codigo_manual, rlinea
FROM Inserted
Esto deberia ser mas rapido y reducir los problemas de bloqueos, debes
tambien cuidar que la tabla de auditoria no tenga demasiados indices y los
que tenga deben estar muy bien disenados.
Espero que te funcione. Saludos,


Javier Loria
Costa Rica
Se aprecia la inclusion de DDL (CREATE, INSERTS, etc.)
que pueda ser copiado y pegado al Query Analizer.
La version de SQL y Service Pack tambien ayuda.
Juan F Botero escribio:
CREATE TRIGGER [auditoria] ON [ot]

FOR UPDATE

AS

IF UPDATE(nota) or UPDATE(rlinea)

INSERT INTO ot_audi(
tipo_operacion,custom,fecha_alumno,codigo_manual,nota)

select 1,ot.t_custom,ot.t_date,ot.t_codigo_manual,ot.rlinea from ot,
inserted

where ot.t_custom = inserted. t_custom and ot.t_date = inserted.
t_date and ot.rlinea = inserted. rlinea



en la aplicacion me sale un error de bloqueo de tabla exactamente en
el update. que es lo que controlo con el trigger.

el error textual no lo tengo en este momento, pero en resumen es eso.

"Maximiliano Damian Accotto"
escribió en el mensaje news:
el trigger no creo te hace perder datos, lo mas probable que la
aplicacion no este bien pensada y pierda alguna transaccion o algo
asi, yo revisaria con el Profiler eso.

Ahora en la aplicacion cuando vos decis que se pierde el dato, no
marca ningun error?

podrias tambien pegar el codigo completo del Trigger?


Salu2 enormes

Maximiliano Damian Accotto

Fundicion San Cayetano S.A.
Gerente de IT
Buenos Aires - Argentina
-
Desarrollador 3 estrellas
http://www.microsoft.com/spanish/ms...efault.asp
-
(maxi_accotto[arroba]speedy.com.ar)
MSN:
"Juan F Botero" escribió en el mensaje
news:
lo curiosos es que hace varios años trabajo con la aplicacion y no
habia tenido antes esa clase de problemas, estos aparecieron un dia
despues de poner el trigger. asi que dudo mas del trigger, que de
la aplicacion, pero no se por donde atacar el problema. ademas nose
de que forma se realizan las actualizacion, pues no tengo los
fuentes de esa aplicacion.

gracias por sus comentarios

"Maximiliano Damian Accotto"
escribió en el mensaje news:#
que pierdas datos mmmm ahi hay otro problema, como haces los
updates, usas Transacciones? revisa bien eso porque me parece que
anda por ese lado la cosa


Salu2 enormes

Maximiliano Damian Accotto

Fundicion San Cayetano S.A.
Gerente de IT
Buenos Aires - Argentina
-
Desarrollador 3 estrellas





http://www.microsoft.com/spanish/ms...efault.asp
-
(maxi_accotto[arroba]speedy.com.ar)
MSN:
"Juan F Botero" escribió en el mensaje
news:%
Saludos

Realice un trigger para llevar un auditoria de un campo en una
tabla especifica (solo con UPDATE). El trigger funciona bien ,
pero se me han presentados algunos problemas desde que instale el
trigger.
La tabla donde instale el trigger es actualizada constantemente
por diferentes aplicaciones y en muchos casos, pueden coincidir
varias actualizaciones en la misma tabla.
El problema es que algunas actualizaciones no se estan realizando
correctamente en la tabla, lo cual me genera perdida de datos.

La pregunta seria, si este bloqueo de las sentencias o la perdida
de datos, es porque el servidor no es capaz de llevar a cabo
eficientemente todas las operaciones requeridas por las
sentencias slq y los trigger simultaneamente? o es otra clase de
problema?

Gracias por sus comentarios.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida