[firebase-br] Tentativa log dos comandos

Felix - SOL Informática felix em solsistemas.com
Ter Jul 31 17:21:22 -03 2012


Firebird 2.1, tentando fazer um log dos comandos que a base recebe, mas a
variável xComando sempre retorna null. Tem como fazer algo assim, sem usar
ferramentas de terceiros e não migrar para 2.5 e usar a TraceApi? Obrigado.

CREATE TABLE AUDITORIA
(
  Tabela Varchar(30),
  DataHora Timestamp,
  COMANDO Blob sub_type 1
);

SET TERM ^ ;
CREATE TRIGGER AUDITORIA FOR APRESENTACAO ACTIVE
BEFORE INSERT OR UPDATE OR DELETE POSITION 10
AS 
DECLARE VARIABLE xTABELA  VARCHAR(30);
DECLARE VARIABLE xCOMANDO Blob sub_type 1;
BEGIN 

   xTABELA = 'APRESENTACAO';
   select first 1 mon$sql_text from mon$statements where upper(mon$sql_text)
containing :xTABELA INTO :xCOMANDO;
	

   insert into AUDITORIA(Tabela,datahora,comando)
values(:xTABELA,CURRENT_TIMESTAMP,:xCOMANDO);
END^
SET TERM ; ^

Francisco Felix
www.solsistemas.com





Mais detalhes sobre a lista de discussão lista