Eu utilizo tabela(s) temporária(s). Como é restrita para a conexão corrente, após conectar eu atualizo com as informações que preciso. Nas triggers leio esta tabela e gravo nas tabelas auditadas.
Em 25 de julho de 2014 13:26, Fabrízio de Royes Mello < [email protected]> escreveu: > On 25-07-2014 12:18, Flavio Henrique Araque Gurgel wrote: > >> >>Pretendo fazer essa operação através de trigger > >> Utilizo o Audit trigger 91Plus [1] > >> > >> >>O problema é capturar o responsável pela alteração, porque quem faz a > >> conexão no banco é um usuário único, definido na aplicação > >> Tive o mesmo problema, como uso jdbc resolvi passando o id do usuário > >> logado como comentário no final da query: > >> UPDATE tabela SET campo = true WHERE id = 1 --ul:5 > >> onde ul:5 significa usuáio logado de id 5 > >> alterei a a trigger original do audit trigger para capturar em vez do > >> usuário do postgres, capturar o id que vem após a string '--ul:' > >> > >> [1] https://wiki.postgresql.org/wiki/Audit_trigger_91plus > >> > >> Atenciosamente, > >> > >> Alessandro Lima > > > > Cara, bela ideia essa sua! É um problema recorrente. > > Você poderia até incluí-la nessa página Wiki como um item adicional. > > > > Outra alternativa para esse problema é utilizar variáveis de sessão > (custom options). Ex: > > fabrizio=# SELECT current_setting('classe.variavel'); > ERROR: unrecognized configuration parameter "classe.variavel" > fabrizio=# SELECT set_config('classe.variavel', 'valor', false); > set_config > ------------ > valor > (1 row) > > fabrizio=# SELECT current_setting('classe.variavel'); > current_setting > ----------------- > valor > (1 row) > > > Há algum tempo escrevi um extensão [1] pra manipular essas variáveis de > sessão. > > Essa necessidade surgiu no passado pelo mesmo motivo, e na época a > aplicação era PHP, então pegamos todo conteúdo da sessao ($_SESSION) e > gravamos na sessão do PostgreSQL após o pg_connect. Com isso temos as > mesmas variáveis da aplicação no banco também. Ajudou bastante ;-) > > Att, > > [1] http://pgxn.org/dist/session_variables/0.0.4/ > > -- > Fabrízio de Royes Mello Timbira - http://www.timbira.com.br/ > PostgreSQL: Consultoria, Desenvolvimento, Suporte 24x7 e Treinamento > _______________________________________________ > pgbr-geral mailing list > [email protected] > https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral > -- Renato Becker Desenvolvimento de Software DBA PostgreSQL http://about.me/renatobecker
_______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
