Trigger atualizar campo
Pessoal tenho o campo DT_ATUALIZ_CAD onde é gravado a data em que o registro foi atualizado, para isso queria criar uma trigger que verificasse se o valor de algum campo foi alterado, imaginei algo do tipo
Só que se eu tiver 50 campos na tabela terei que adiciona-los na trigger, e toda vez que adicionar ou remover um campo da tabela terei que alterar a trigger, não teria uma maneira mais simples?
if (new.NOME <> old.NOME) or (new.RUA <> old.RUA) then new.DT_ATUALIZ_CAD = current_date
Só que se eu tiver 50 campos na tabela terei que adiciona-los na trigger, e toda vez que adicionar ou remover um campo da tabela terei que alterar a trigger, não teria uma maneira mais simples?
Steve_narancic
Curtidas 0
Respostas
Afarias
06/10/2005
|não teria uma maneira mais simples?
infelizmente, Não.
mas, se vc não precisa saber exatamente QUAL o campo foi alterado, então não tem pq fazer essas verificações.
T+
infelizmente, Não.
mas, se vc não precisa saber exatamente QUAL o campo foi alterado, então não tem pq fazer essas verificações.
T+
GOSTEI 0
Steve_narancic
06/10/2005
O problema é que o simples fato de dar um post na tabela sem ter alterado sequer o valor de algum campo, a trigger é disparada atualizando o campo DT_ATUALIZ_CAD, sendo que nenhum valor foi alterado, por isso que faço esta verificação se os valores são diferentes
GOSTEI 0
Beppe
06/10/2005
Hum...no BeforePost, verifique campo a campo(for I := 0 to FieldCount - 1 do) se alguém foi modificado, caso contrário chame Cancel.
GOSTEI 0