On 5 Jul 2014 06:58, <m.fritz@wisutec.de> wrote:
>
> A "before delete" trigger on a child table returning "NULL" prevents
records
> from deletion, which violates against the FOREIGN KEY constraint. Child
> records are still present, master record is deleted but FOREIGN KEY is
still
> "VALID".
Yup, don't do that. I bellringer there are warnings to this effect in the
documentation.
PostgreSQL's referential integrity is handled by triggers so it's possible
to escape their effects with other triggers.
We could implement them internally without using triggers but there are
other advantages to using triggers and so far the feeling is that the
development effort is better spent elsewhere.