Deferred Constraints Issues - Mailing list pgsql-admin

From kevin kempter
Subject Deferred Constraints Issues
Date
Msg-id B9831791-E41D-4382-A6B4-35A28BA5B02E@kevinkempterllc.com
Whole thread Raw
Responses Re: Deferred Constraints Issues  (Stephan Szabo <sszabo@megazone.bigpanda.com>)
List pgsql-admin
Hi List;

I've placed this sql in a script:

psql my_db <<!
begin;
SET CONSTRAINTS ALL DEFERRED ;
delete from account where 1 = 1;
delete from cust where 1 = 1;
delete from cust_type where 1 = 1;
delete from cust_orders where 1 = 1;
commit;
!

The tables have relationships, however I expect the 'SET CONSTRAINTS
ALL DEFERRED' to defer constraint checks.  When I run the script I get
this:


BEGIN
SET CONSTRAINTS
ERROR:  update or delete on table "account" violates foreign key
constraint "account_rel" on table "cust_type"
DETAIL:  Key (account_id)=(1) is still referenced from table
"cust_type".
ERROR:  current transaction is aborted, commands ignored until end of
transaction block
ERROR:  current transaction is aborted, commands ignored until end of
transaction block
ERROR:  current transaction is aborted, commands ignored until end of
transaction block
ROLLBACK


Am I doing something wrong ? Or, is the 'SET CONSTRAINTS ALL DEFERRED'
not working properly ?


Thanks in advance...




pgsql-admin by date:

Previous
From: "Marc Fromm"
Date:
Subject: restore message . . . cascade
Next
From: Stephan Szabo
Date:
Subject: Re: Deferred Constraints Issues