> Actually I just figured out, that is is not the trigger but the two  
> cascade on update triggers collide.
> It happens also without the trigger:
> 
> lt=# UPDATE ltlocation SET id = 45555 WHERE id = 18999;
> ERROR:  insert or update on table "ltlocationpath" violates foreign  
> key constraint "ltlocancester_fkey"
> DETAIL:  Key (ltlocancester_id)=(18999) is not present in table  
> "ltlocation".
> CONTEXT:  SQL statement "UPDATE ONLY "public"."ltlocationpath" SET  
> "ltlocation_id" = $1 WHERE "ltlocation_id" = $2"
> 
> I think the two foreign key constraints together make it impossible  
> to change the primary key (which isn't needed),
> as they would have to run "as one" which they can't...

The two foreign key constraints worked fine when I tried them,
the only problem was the trigger.

I don't get what you describe.

Have you changed anything in the definitions?

If yes, post table, key, and trigger definitions as you have them now.

Yours,
Laurenz Albe

---------------------------(end of broadcast)---------------------------
TIP 4: Have you searched our list archives?

               http://archives.postgresql.org/

Reply via email to