Gostaria de saber se tem como montar uma auditoria no Oracle de tal forma que ao inserir,alterar,excluir dados em uma tabela eu consiga gravar essas informações em uma tabela com uma estrutura parecida com esta:
seq_auditoria,nome_tabela,nome_campo,valor_anterior,valor_atual.
Porém eu precisaria fazer isto de uma maneira, digamos automática, sem ter que ficar passando campo por campo para uma funcao fazer o insert nesta tabela. Ou seja, o objetivo seria ter uma maneira de fazer isto de tal forma que quando se acrescente um novo campo na tabela, o procedimento de auditoria faça o insert na tabela sem eu ter que alterar o procedimento, pois da maneira tradicional (campo a campo) ficaria assim:
create or replace triger upd_clientes
after update on clientes for each row
begin
if :old.codcli <> :new.codcli then
Gera_Auditoria('CLIENTES','CODCLI',:old.codcli,:new.codcli);
end if;
if :old.nome <> :new.nome then
Gera_Auditoria('CLIENTES','NOME',:old.nome,:new.nome);
... etc
end;
Grato pela atenção!