View with Union and update rule - fails

Поиск
Список
Период
Сортировка
От Filip Jirsák
Тема View with Union and update rule - fails
Дата
Msg-id 41DE6E1D.9060203@gymnacel.cz
обсуждение исходный текст
Ответы Re: View with Union and update rule - fails  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-sql
Hi,
I have trouble with following VIEW and RULE:

----------------

CREATE SCHEMA test   AUTHORIZATION postgres;

CREATE TABLE test.table1 (    uid int4,    col1 int4,    col2 int4,    col3 int4
);

CREATE TABLE test.table2 (    col4 int4
) INHERITS (test.table1);

CREATE TABLE test.table3 (    col5 int4
) INHERITS (test.table1);

CREATE VIEW test.view1 AS    SELECT uid, col1,col2,col3 FROM test.table2
UNION    SELECT uid, col1,col2,col3 FROM test.table3;

INSERT INTO test.table1 VALUES (1,1,1,1);
INSERT INTO test.table1 VALUES (2,2,2,2);
INSERT INTO test.table1 VALUES (3,3,3,3);
INSERT INTO test.table1 VALUES (4,4,4,4);
INSERT INTO test.table2 VALUES (5,5,5,5,5);
INSERT INTO test.table2 VALUES (6,6,6,6,6);
INSERT INTO test.table2 VALUES (7,7,7,7,7);
INSERT INTO test.table2 VALUES (8,8,8,8,8);
INSERT INTO test.table3 VALUES (9,9,9,9,9);
INSERT INTO test.table3 VALUES (10,10,10,10,10);
INSERT INTO test.table3 VALUES (11,11,11,11,11);
INSERT INTO test.table3 VALUES (12,12,12,12,12);

CREATE OR REPLACE RULE r1 AS     ON UPDATE TO test.view1 DO INSTEAD    UPDATE test.table1 SET col1 = 100;

UPDATE test.view1 SET col2 = 101 WHERE uid=1;
----------------

I get:

ERROR:  unrecognized node type: 651

But

UPDATE test.view1 SET col2 = 101;

(without WHERE) works fine. View without UNION works also fine.
Is there something wrong in my code, or is it some feature/bug?
PostgreSQL is 7.4.5 running on Gentoo Linux.
Thanks,
Filip Jirsák



В списке pgsql-sql по дате отправления:

Предыдущее
От: drdani@mazsola.iit.uni-miskolc.hu
Дата:
Сообщение: vararg plpsql function
Следующее
От: "Rick Schumeyer"
Дата:
Сообщение: simulating row ownership