Re: Deferrable triggers - Mailing list pgsql-hackers

From Stephan Szabo
Subject Re: Deferrable triggers
Date
Msg-id 20031106142720.M53137@megazone.bigpanda.com
Whole thread Raw
In response to Deferrable triggers  (Grant McLean <grant@catalyst.net.nz>)
Responses Re: Deferrable triggers  (Grant McLean <grant@catalyst.net.nz>)
List pgsql-hackers
On Thu, 7 Nov 2003, Grant McLean wrote:

> So it would seem that if I include the clauses:
>
>         on delete restrict on update restrict
>
> Then the 'deferrable' which follows is only applied to creates and
> not to updates or deletes.
>
> Since 'restrict' is the default, the clauses aren't adding any value
> and can be omitted.  In my case, the SQL is generated for me by
> PowerDesigner.  My workaround is to tweak the PowerDesigner output
> definition to not include this line.
>
> I have seen this behaviour in both 7.2 and 7.3.  Is it a bug?  Or
> am I misunderstanding something?

Restrict is not the default, there is a difference between restrict and no
action. In fact I believe the main point of restrict (which IIRC was added
for sql99) is to allow you to have a deferred constraint that can do
immediate checking of validity on pk changes.


pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: Bogus bind() warnings
Next
From: Josh Berkus
Date:
Subject: Re: [pgsql-www] Changes to Contributor List