Re: cascading - Mailing list pgsql-general

From Stephan Szabo
Subject Re: cascading
Date
Msg-id 20020913152141.M61180-100000@megazone23.bigpanda.com
Whole thread Raw
In response to cascading  (Michael Zouroudis <mzouroudis@idealcorp.com>)
List pgsql-general
On Fri, 13 Sep 2002, Michael Zouroudis wrote:

> i am developing a db in pl/pgsql at work and i am having problems with
> one final part;  the deleting of ref. int. rows.  there are three
> tables, which i will list below as close as possible to what i remember
> (i'm at home and don't have my notes).
>
> create table goodbye (
> goodbye_id    serial     primary key,
> whenn             text,
> wheree             text,
> how                   text,
> isbn                    int
> );
>
> create table hello (
> hello_id             serial        primary key,
> goodbye_id           int,
> how                      text,
> isbn                        int,
> constraints hello_goodbye_id_fk foreign key references
> goodbye(goodbye_id) on delete cascade
> );
>
> create table aidos (
> adios_id         serial          primary key,
> cost                money,
> title                   text
> );
>
> create table goodbye_adios (
> goodbye_id          int,
> adios_id              int,
> constraint goodbye_adios_goodbye_id_fk foreign key references
> goodbye(goodbye_id) on delete cascade,
> constraint goodbye_adios_adios_id_fk foreign key references
> adios(adios_id) on delete cascade
> );
>
> like i said, this is as close as i can remember.
>
> the problem that occurs is that when i do a delete statement on the
> goodbye_adios table, it will automatically delete from the goodbye_adios
> table and the goodbye table, but not the record from the adios table.  i

I assume you mean a delete from goodbye will delete from hello and
goodbye_adios since that's what appears to be correct from the above.

You have no constraints that would delete from adios listed, the
on delete cascade in goodbye_adios means that a delete on adios will
delete a row in goodbye_adios, but it doesn't do the inverse.



pgsql-general by date:

Previous
From: Jeff Davis
Date:
Subject: Re: postgres functions
Next
From: "Williams, Travis L, NPONS"
Date:
Subject: Re: Can't run configure