On Mon, 3 Mar 2003, Dennis Gearon wrote:
> Is it possible to do 'cross constraints' between two tables using a transaction and:
>
> SET�CONSTRAINTS�ALL�DEFERRED;
>
> Or making both tables INITIALLY DEFERRED?
You make constraints INITIALLY DEFERRED, but yes in general, although
technically you only need to make one of the constraints deferred unless
you don't want to constraint the order that the rows are made.
PostgreSQL doesn't support deferred check constraints, and in general the
deferred trigger stuff isn't really meant for end-user use (it's really
there for supporting foreign keys), so you'll probably want to make the
foreign key from usremailaddrs->usrs be initially deferred and insert the
usremailaddrs row first.