Rodrigo Hjort <[EMAIL PROTECTED]> escreveu:
Fala, Coutinho!

Tem outra: se você precisar, dá pra passar parâmetros na chamada da função disparada pela trigger. :)

Com isso você pode usar a mesma função (que retorna "trigger") na mesma tabela, mas executando instruções distintas.

--
Rodrigo Hjort
http://icewall.org/~hjort


2006/11/11, Nabucodonosor Coutinho <[EMAIL PROTECTED] >:
respondendo a mim mesmo:

pesquisando na net achei isso em espanhol:

Nombre               Significado
TG_NAME            Nombre del trigger
TG_WHEN            BEFORE o AFTER
TG_LEVEL            ROW o STATEMENT
TG_OP                 INSERT, UPDATE o DELETE
TG_RELID            OID de la tabla donde está definido el trigger
TG_RELNAME      Nombre de la tabla donde está definido el trigger
TG_NARGS        Número de argumentos en la fila que se está actualizando

2006/11/11, Nabucodonosor Coutinho < [EMAIL PROTECTED]>:
> senhores, preciso fazer triggers aqui para algumas tabelas, o que essa
> triger vai fazer eh a mesma coisa para todas as tabelas.
>
> por exemplo, quando for feito uma insercao uma tabela chamada arquivos
> ela vai verificar em outra tabela se insercao na tabela arquivos gera
> pontos, se gerar ela insere numa tabela de pontos o id do usuario e o
> numero de pontos conforme estava informado na outra tabela.
>
> isso eh facil de fazer, porém eu queria usar apenas uma funcao para as
> triggers de todas as tabelas envolvidas. nesse caso eu preciso saber
> qual o nome da tabela que estah chamando a trigger.
>
> Alguem pode me ajudar?
>




Me intrometendo na discussão:

Coutinho:as variáveis especiais das triggers estão descritas em:
http://www.postgresql.org/docs/8.1/interactive/plpgsql-trigger.html

Rodrigo: cuidado com estes parâmetros! Os parâmetros que podem ser passados são fixados quando da *criação* da trigger (CREATE TRIGGER) e não podem ser modificados (ou variar) quando do *disparo* da trigger. Veja:
http://www.postgresql.org/docs/8.1/interactive/sql-createtrigger.html
"arguments
An optional comma-separated list of arguments to be provided to the function when the trigger is executed. The arguments are literal string constants. Simple names and numeric constants may be written here, too, but they will all be converted to strings. Please check the description of the implementation language of the trigger function about how the trigger arguments are accessible within the function; it may be different from normal function arguments."
[]s
Osvaldo


O Yahoo! está de cara nova. Venha conferir!
_______________________________________________
Grupo de Usuários do PostgreSQL no Brasil
Antes de perguntar consulte o manual
http://pgdocptbr.sourceforge.net/

Para editar suas opções ou sair da lista acesse a página da lista em:
http://pgfoundry.org/mailman/listinfo/brasil-usuarios

Responder a