[firebase-br] inserir dados em tabela automaticamente
Paulo Casagrande
paulo em sjudas.com.br
Qui Out 18 17:13:41 -03 2007
Jeferson,
1) A principio eu pensei que você gravava
cada campo com sendo um registro da tabela de log!
Tipo:
( USUARIO, DATA_HORA, TABELA, CAMPO, OPERACAO, ANTERIOR, ALTERADO )
2) Em procedimentos que são automatizados,
você registra o nome do usuário ou registra que foi o
sistema que gerou a alteração ?
Ex: Um procedimento de limpeza de registros antigos.
Obrigado
>> - E como fica o desempenho ?
>
> Para maioria das operações, por exemplo a inclusão de um registro em um
> cadastro ou movimentaçõ, o tempo gasto para gravação do log é
> irrelevante. Em operações em lote, onde milhares de registros são
> editados em sequência há sim uma queda de desempenho, mas não tão grande
> a ponto de se tornar um incômodo para mim, ou para os usuários da aplicação.
> No meu caso são pouquíssimas situações as situações em que mais do que
> uma centena de registros são editados em sequência.
>
>
>> - Cada campo 1 por 1 ?
>
> Sim. A trigger compara os valores de cada campo, e se decidir que ele
> deve ser registrado no log, um procedimento armazenado no banco é
> acionado com a tarefa única de inserir um único registro na tabela de
> logs de campos, recebendo como parâmetro, entre outras informações, o
> nome do campo a ser gravado.
>
>
>> - Em que formato são gravadas as informações,
>> no formato original do campo ou é feito um cast ?
>
> Todos os dados são convertidos para
> varchar(TAMANHO_DO_CAMPO_DE_VALOR_DA_TABELA_DE_LOGS_DE_CAMPOS), exceto
> blobs, que são gravados em seu formato original.
>
>
> Abraço!
> Jeferson Oliveira
Mais detalhes sobre a lista de discussão lista