Re: request for advise

From: Stephan Szabo <sszabo(at)megazone23(dot)bigpanda(dot)com>
To: Brian Hirt <bhirt(at)mobygames(dot)com>
Cc: <pgsql-general(at)postgresql(dot)org>, Brian A Hirt <bhirt(at)berkhirt(dot)com>
Subject: Re: request for advise
Date: 2001-11-05 17:02:20
Message-ID: 20011105090106.N40711-100000@megazone23.bigpanda.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On Mon, 5 Nov 2001, Brian Hirt wrote:

> Hello,
>
> I'm looking for people's opinions on what would be the best way to delete
> some rows in one table, when the row referencing them in another table is
> deleted. The relationship of the objects is one-to-one. IE, you will never

I'm assuming that you've tried adding a ON DELETE CASCADE to the
references constraints and had that fail, right?

> have more than one foriegn key for each primary key. My example contains
> two tables; 'list' and 'sample' The 'list' table is a linked list of
> records, and 'sample' is another record that contains a pointer to the head
> of a list. When a row is deleted from 'sample' I want all of the rows from
> 'list' deleted that part of the list. Some things to note, are that the
> list has to be deleted in reverse order to avoid RI errors; and I'm not sure
> about pgsql's ability to run recursively. I tried writing a function to
> recursively delete the list but it fails with "ERROR: unexpected SELECT
> query in exec_stmt_execsql()"

I think you need to SELECT into a variable, so probably something like
SELECT INTO tmpresult ...; and a tmpresult variable may do it.

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Ian Harding 2001-11-05 17:06:03 Re: Probably simple answer
Previous Message Stephan Szabo 2001-11-05 17:00:09 Re: EXCEPT performace