On Fri, Dec 30, 2005 at 12:09:12PM -0800, CSN wrote:
> ERROR:  insert or update on table "types" violates
> foreign key constraint "$1"
> DETAIL:  Key (page_template_id)=(8) is not present in
> table "templates".
> CONTEXT:  SQL statement "UPDATE ONLY "public"."types"
> SET "item_template_id" = NULL WHERE "item_template_id"
> = $1"
> SQL statement "DELETE FROM ONLY "public"."templates"
> WHERE "site_id" = $1"
> 
> In statement:
> DELETE FROM "sites" WHERE "id"='1'

What are the table definitions for sites, templates, and types?
I'd guess you have some ON DELETE CASCADE and ON DELETE SET NULL
foreign key constraints in templates and types.  Think through what
happens when those constraints are triggered by the delete on sites;
somehow you're ending up with a foreign key that violates its
constraint so the delete fails.

What version of PostgreSQL is this?

-- 
Michael Fuhr

---------------------------(end of broadcast)---------------------------
TIP 3: Have you checked our extensive FAQ?

               http://www.postgresql.org/docs/faq

Reply via email to