Auditoria-Gravar os SQL executados(insert,delete, etc)BD-IB

06/07/2004

0

idéias

preciso fazer uma especie de auditoria em meu sistema que gravasse os SQL executados (somente INSERT, DELETE e UPDATE).
Utilizo a paleta Interbase, consegui alguma coisa com o SqlMonitor ainda nao é o que eu quero.

alguem poderia me ajudar?


Danilodcf

Danilodcf

Responder

Posts

06/07/2004

Khundalini

A edição 51 da revista ClubeDelphi apresentou uma técnica de como registrar e gerenciar todas as alterações no banco de dados. É como se ele gerasse um log dos dados em .XML. Muito bom.

[]s
Rubem Rocha
Manaus, AM


Responder

06/07/2004

Danilodcf

obrigado pela dica, mas eu preceiso fazer isto com a paleta com a paleta Interbase, nao uso dbExpert.


Responder

06/07/2004

Khundalini

Companheiro, a matéria da revista faz uso de TClientDataSet + TDataSetProvider para implementar isso. E por usar TClientDataSet, você pode usar qualquer tipo de dataset que quiser em um TDataSetProvider: IBX, IBO, dbExpress (e não dbExpert), BDE, ADO, etc. Procure informações sobre esse artigo.

[]s
Rubem Rocha
Manaus, AM


Responder

06/07/2004

Danilodcf

Agradeco novamente pela atencao.

Companheiro, por enquanto nao quero usar um TDataSetProvider, pois teria que mudar no sistema inteiro.
Na verdade, gostaria de saber se teria como eu extrair o Sql direto de um TIBDataSet.
Voce saberia me dizer tem como fazer isto?


Responder

06/07/2004

Khundalini

Que eu saiba, o TIBDataSet possui as seguintes propriedades (Detalhe: consultei isso apenas usando o Code Completion do IDE do Delphi):

property UpdateSQL;
property DeleteSQL;
property InsertSQL;

Isso sem falar que você poderia interceptar a ação que estã sendo executada no evento OnUpdateRecord (acredito eu).


[]s
Rubem Rocha
Manaus, AM


Responder

07/07/2004

Danilodcf

Tem alguma sugestao de como gravar os sql durante o OnUpateRecord?

So estou conseguido gravar os sql sem valores (Ex: UPDATE CLIENTE SET CD_CLIENTE = :CD_CLIENTE). Atraves das propriedades QDelete, QInsert, QModify.
Como obter os sql com os valores (Ex: UPDATE CLIENTE SET CD_CLIENTE = 1654)?


Responder

08/07/2004

Khundalini

Ora, companheiro, experimentou consultar a propriedade Params (ou Parameters) de um TIBDataSet???
[]s


Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar