On Mon, 17 Nov 2003, Tomasz Myrta wrote: > I've got some tables defined as: > create table xx ( > some_column references master_table > > It means this column is defined by default: > NOT DEFERRABLE, INITIALLY IMMEDIATE > > I tried replacing rows in this table by new ones as: > set autocommit=off; > begin; > set constraints all deferred; > delete from .... > insert ... > insert... > commit; > I get "integrity violation"... just after "delete" > > If I well understood manual, it works like it should. I'm not sure, > because if I run this query in pgAdmin2, it works fine (why?) and > replaces rows as needed. > > When I drop this foreign key constraint (not too easy without a > constraint name) and recreate it as "DEFERRABLE", this query works fine > also in psql. > > My question is: Why my query works fine when using pgAdmin, and it fails > when using psql?
Hmm, I'd suggest turning on query logging to make sure pgAdmin is doing what you expect. ---------------------------(end of broadcast)--------------------------- TIP 9: the planner will ignore your desire to choose an index scan if your joining column's datatypes do not match