Columnas iguales en cabecera y detalle.

14/11/2005 - 08:32 por José Antonio | Informe spam
Por motivo de rendimiento en consultas estadisticas posteriores tengo en una
tabla cabecera y otra detalle de la misma, tres columnas repetidas, para que
puedan ser claves y los select estadisticos posteriores se ejecuten con
mayor rapided.

Tabla cabecera tiene las columans cliente,agente y fecha.
Tabla detalle tambien tiene estas tres columnas.

En un trigger de update para la tabla cabecera tengo el siguiente codigo
para que si una o varias de estas columnas cambian en la cabecera tambien
cambien en el detalle:

if update(cliente) or update(agente) or update(fecha)
updare detalle set cliente=c.cliente,agente=c.agente,fecha=c.fecha
from detalle d join inserted c on c.numero=d.numero

El problema que tengo es que casi siempre me lo hace bien, pero falla
esporadicamente de vez en cuando sin que se genere ningun error.

¿Hay alguna manera de que automaticamente el sqlserver cambie estas columnas
sin tener que utilizar el trigger?
¿Teneis alguan idea de porque puede fallar de vez en cuando este trigger?.


Saludos y gracias.

Preguntas similare

Leer las respuestas

#6 Maxi
15/11/2005 - 12:34 | Informe spam
Hola, entra al profiler de SQL server


Salu2
Maxi [MVP SQL SERVER]


"José Antonio" escribió en el
mensaje news:%
Como puedo poner una traza para ver el comportamiento de los triggers?


"Maxi" escribió en el mensaje
news:u%
Hola, yo no veo nada raro en el trigger, lo que podrias hacer es poner
una traza y ver que esta pasando.

Que version de Service Pack tienes?


Salu2
Maxi [MVP SQL SERVER]


"José Antonio" escribió en el
mensaje news:%23%
Por motivo de rendimiento en consultas estadisticas posteriores tengo en
una tabla cabecera y otra detalle de la misma, tres columnas repetidas,
para que puedan ser claves y los select estadisticos posteriores se
ejecuten con mayor rapided.

Tabla cabecera tiene las columans cliente,agente y fecha.
Tabla detalle tambien tiene estas tres columnas.

En un trigger de update para la tabla cabecera tengo el siguiente codigo
para que si una o varias de estas columnas cambian en la cabecera
tambien cambien en el detalle:

if update(cliente) or update(agente) or update(fecha)
updare detalle set
cliente=c.cliente,agente=c.agente,fecha=c.fecha from detalle d join
inserted c on c.numero=d.numero

El problema que tengo es que casi siempre me lo hace bien, pero falla
esporadicamente de vez en cuando sin que se genere ningun error.

¿Hay alguna manera de que automaticamente el sqlserver cambie estas
columnas sin tener que utilizar el trigger?
¿Teneis alguan idea de porque puede fallar de vez en cuando este
trigger?.


Saludos y gracias.









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