Olá, Você quer saber se quem disparou o evento foi uma operação de insert, update ou delete?
2009/6/26 Anderson Aguilar Ferreira <[email protected]> > Vou colocar um exemplo mais detalhado. > > Tenho uma tabela chamada CLIENTE com os seguintes campos codcli, razao > e fantasia. > > Tenho também a tabela CLIENDERECOS com os seguintes campos codcli, > seqendereco, logradouro, numero, complemento, ... > > A tabela CLIENDERECOS tem o seguinte relacionamento com a tabela CLIENTE. > > ALTER TABLE clienderecos > ADD CONSTRAINT nome_qualquer FOREIGN KEY (codcli) > REFERENCES cliente(codcli) MATCH SIMPLE > ON UPDATE CASCADE ON DELETE CASCADE; > > e também tenho a seguinte trigger na tabela CLIENDERECOS. > > CREATE TRIGGER log_clienderecos > AFTER INSERT OR UPDATE OR DELETE > ON agendaaltprecitem > FOR EACH ROW > EXECUTE PROCEDURE armazenar_log(); > > quando executo o seguinte comando: > > UPDATE cliente SET codcli = 2 WHERE codcli = 1; > > O banco irá executar a trigger, pois a CONSTRAINT irá alterar o codcli na > tabela CLIENDERECOS. > > O que eu gostaria de saber, é se o PostgreSQL tem algum parâmetro que me > informa que quem disparou a TRIGGER log_clienderecos foi > a CONSTRAINT nome_qualquer. > > > > > ----- Original Message ----- > *From:* JotaComm <[email protected]> > *To:* Comunidade PostgreSQL Brasileira<[email protected]> > *Sent:* Friday, June 26, 2009 4:38 PM > *Subject:* Re: [pgbr-geral] Saber de onde veio o disparo da trigger > > Opa, > > Não consegui entender o que você deseja :( > > 2009/6/26 Anderson Aguilar Ferreira <[email protected]> > >> Boa tarde pessoal >> >> Será que alguém sabe se o PostgreSQL tem algum parâmetro que informa de >> onde a trigger foi disparada ?? >> >> Exemplo: >> >> Faço a alteração na chave de relação de uma tabela PAI. Automaticamente, >> por causa da FOREIGN KEY que relaciona as tabelas filhas com esta PAI, sera >> feito a alteração da chave nas tabelas filhas também. Caso as tabelas filhas >> tenha TRIGGERs, será executado no ato da alteração, por exemplo: trigger que >> armazena log de alterações, entre outras. >> >> O que eu gostaria de saber é se o PostgreSQL tem algum parâmetro de >> TRIGGER que informa que a trigger da tabela filha está sendo disparada por >> uma FOREIGN KEY(relacionamento) ou por alguma tabela, ou por alguma outra >> trigger ??? >> >> _______________________________________________ >> pgbr-geral mailing list >> [email protected] >> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral >> >> > > []s > -- > JotaComm > http://jotacomm.wordpress.com > http://www.dextra.com.br/postgres > > ------------------------------ > > _______________________________________________ > pgbr-geral mailing list > [email protected] > https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral > > > _______________________________________________ > pgbr-geral mailing list > [email protected] > https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral > > []s -- JotaComm http://jotacomm.wordpress.com http://www.dextra.com.br/postgres
_______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
