Problem with CREATE RULE ON DELETE (PostgreSQL only executes the first expression) - Mailing list pgsql-general

From J. Roeleveld
Subject Problem with CREATE RULE ON DELETE (PostgreSQL only executes the first expression)
Date
Msg-id 4.1.19991117211134.00918c40@pop.softhome.net
Whole thread Raw
List pgsql-general
Hi,

I have found what appears to be a bug in PostgreSQL, or is this a feature?
I don't think it's a feature, because the postgreSQL documentation state it
should work.

When creating delete-rules for views, i have found that only the first
expression is being executed, when
using multiple expressions.

I have managed to do this for Insert, and i think for Update as well...
although i haven't gotten around to testing that yet.

The following is the RULE-definition I use, it's for a View (
bedrijven_view ) which consists of
two tables ( adressen_table  and   bedrijven_table ).
When I change the sequence (eg. put the delete from bedrijven_table first)
it still only does the first statement.

CREATE RULE delete_bedrijven_view AS ON DELETE
    TO bedrijven_view
    DO INSTEAD (
        DELETE FROM adressen_table
            WHERE adres_id = get_adres_nummer(straatnaam,
                huisnummer,postcode,land);
        DELETE FROM bedrijven_table
            WHERE firma_id = firma_id;
    );


If you require more information, for instance a full list of statements
that can reproduce the problem,
please let me know, and I'll forward the bug-report I sent in yesterday
morning.

with kind regards,

Joost Roeleveld

PS. this is not a new problem, someone else reported this before, but he
hasn't found out how to solve
       this problem either.

pgsql-general by date:

Previous
From: Herbert Liechti
Date:
Subject: sql question
Next
From: "Narayanan, Kannan"
Date:
Subject: How to select the millisecond/microsecond parts of the datetime c olumn