Trigger after insert no funciona desde INSERT INTO / SELECT

15/12/2005 - 20:43 por Carlos | Informe spam
Tengo un trigger en una tabla para actualizar el valor de un campo
(T.campo1). El valor que debe tomar este campo es la suma de otro campo de la
misma tabla (T.campo2) mas otro campo de otra tabla (Ta.campo3).

Lo primero que hago en el trigger es sacar en variables los campos que
necesito de la tabla INSERTED. Y después hago las operaciones y UPDATEs
necesarios.

Si inserto en la tabla registro a registro (uno a uno) , el trigger funciona
perfectamente.

Si inserto varios registros en bloque desde una select, el trigger solo me
funciona bien en el primer registro, el resto se queda con el campo T.campo1
a 0 (default value).

?
 

Leer las respuestas

#1 Alejandro Mesa
15/12/2005 - 20:50 | Informe spam
Carlos,

Por que no posteas el codigo del trigger?

Recuerda que los triggers son disparados por cada sentencia y no por cada
fila involucrada, por lo que debes tener en cuenta la existencia de multi
filas dentro del trigger.


AMB

"Carlos" wrote:

Tengo un trigger en una tabla para actualizar el valor de un campo
(T.campo1). El valor que debe tomar este campo es la suma de otro campo de la
misma tabla (T.campo2) mas otro campo de otra tabla (Ta.campo3).

Lo primero que hago en el trigger es sacar en variables los campos que
necesito de la tabla INSERTED. Y después hago las operaciones y UPDATEs
necesarios.

Si inserto en la tabla registro a registro (uno a uno) , el trigger funciona
perfectamente.

Si inserto varios registros en bloque desde una select, el trigger solo me
funciona bien en el primer registro, el resto se queda con el campo T.campo1
a 0 (default value).

?

Preguntas similares