Hola...
Así es, tendrías que tener uno o dos triggers por tabla...
Por ejemplo, para guardar algún cambio en los datos de un campo:
Código SQL
[-]
create trigger CambioEnCampo for table TablaUno
active after update position 0
as
begin
if (old.Campo <> new.Campo) then
insert into TablaHistorico (Id, NombreCampo, ValorAnt, ValorNuevo)
values(gen_id(IdHistorico_Gen, 1), 'Campo', old.Campo, new.Campo);
end
Este ejemplo no está probado, pero debería servirte para que te des una idea.
Saludos...