Problem with CREATE RULE ON DELETE (PostgreSQL only executes the first expression)

Поиск
Список
Период
Сортировка
От J. Roeleveld
Тема Problem with CREATE RULE ON DELETE (PostgreSQL only executes the first expression)
Дата
Msg-id 4.1.19991117211134.00918c40@pop.softhome.net
обсуждение исходный текст
Список 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 по дате отправления:

Предыдущее
От: Herbert Liechti
Дата:
Сообщение: sql question
Следующее
От: "Narayanan, Kannan"
Дата:
Сообщение: How to select the millisecond/microsecond parts of the datetime c olumn