SQL - funcion update sql

 
Vista:

funcion update sql

Publicado por rayote (1 intervención) el 13/03/2002 06:57:02
buenos dias, tengo un trigger en una tabla que se encarga de gestionarme una tabla de historicos.
tan solo se han de insertar registros en el histórico, cuando alguno de los campos de la tabla se haya modificado, si no, no ha de insertar el historico, mi problema es con el siguiente codigo:

create trigger tr_update_poliza on pol_polizas_colectivas
after insert, update as
if update ([COD_COMPANIA]) or update([COD_RAMO]) or update([ID_CESTA]) or update([ID_TOMADOR]) or update ([ID_AGENTE]) or update([ID_SUBAGENTE])
declare @Max_Id_Hist as int
select @Max_Id_Hist=isnull(max(id_historico),0) from his_pol_polizas_colectivos

insert into his_pol_polizas_colectivos

select @Max_Id_Hist+1, [ID_POLIZA], [COD_COMPANIA], [COD_RAMO], [ID_CESTA], [ID_TOMADOR], [ID_AGENTE], [ID_SUBAGENTE], [ID_SUBSUBAGENTE], GetDate() from inserted

mi problema es que actualizando un registro de la tabla dos veces con los mismos valores en todos los campos, siempre de inserta el registro en el historico....

alguien me puede ayudar
mil gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:funcion update sql

Publicado por alex (21 intervenciones) el 16/03/2002 16:05:39
Segun lo que entendi !!!!!

te puede servir esto ?

insert into his_pol_polizas_colectivos
select @Max_Id_Hist+1, [ID_POLIZA], [COD_COMPANIA], [COD_RAMO], [ID_CESTA], [ID_TOMADOR], [ID_AGENTE], [ID_SUBAGENTE], [ID_SUBSUBAGENTE], GetDate()
from inserted
where ID_POLIZA not in (Select id_poliza from his_pol_polizas_colectivos )
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar