> Veja o o proprio log q vc passou.
> A linha 1, 1º INSERT - Passa no raise
> A linha 2, 2º INSERT - Passa no raise
> A linha 3, 3º INSERT - dá o erro e não entra na trigger.
>
> Percebe q a cada linha entra na trigger porque *em cada linha é dado um
> INSERT*!
>
> Entendeu?
Na real... Ele não estoura antes da trigger, mas não gera o EXCEPTION,
pq o INSERT está sendo EFETUADO FORA DA FUNCAO (pelo menos foi o que
eu constatei).. Para gerar o EXCEPTION, o COPY deveria estar dentro da
funcao....
tipo .... :
CREATE OR REPLACE FUNCTION foo(file VARCHAR) RETURNS VOID AS $$
COPY FROM ....;
EXCEPTION
WHEN unique_violation THEN
RAISE NOTICE 'PULANDO';
RETURN;
END;
END
$$
LANGUAGE 'plpgsql';
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral