Rule trouble (looks to me exactly like the example)

Поиск
Список
Период
Сортировка
От Frank Joerdens
Тема Rule trouble (looks to me exactly like the example)
Дата
Msg-id 20020404191719.C30469@superfly.archi-me-des.de
обсуждение исходный текст
Ответы Re: Rule trouble (looks to me exactly like the example)  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-sql
This is my table:

CREATE TABLE tree (
id                      serial PRIMARY KEY,
parentid            int4 NOT NULL REFERENCES tree ( id ),
ordering        int4 NOT NULL,
leveling        int4 NOT NULL,
status            int4 NOT NULL,
title            text NOT NULL
);

And here's the rule (it doesn't do anything real or interesting, I just
simplified it to the point where it looked like the example):

CREATE RULE insert_level AS
ON INSERT TO tree
WHERE new.id > 0 DO
UPDATE tree SET leveling = 1
WHERE tree.oid = new.oid;

which looks to me like one of the examples in Bruce's book (page 299 in
my pdf version):

CREATE RULE example_5 AS
ON INERT TO emp
WHERE new.salary > 5000 DO
UPDATE emp SET salary = 5000
WHERE emp.oid = new.oid;

If I do an insert like

INSERT INTO tree (parentid,ordering,leveling,status,title)
VALUES (0,0,0,1,'foo');

nothing happens to the leveling column though:

archiweb=# select * from tree ;id | parentid | ordering | leveling | status |   title
----+----------+----------+----------+--------+----------- 0 |        0 |        0 |        0 |      0 | root node11 |
     0 |        0 |        0 |      1 | foo12 |        0 |        0 |        0 |      1 | foo
 
(3 rows)

Although the rule definitely is there:

archiweb=# select tablename,rulename from pg_rules;tablename |   rulename
-----------+--------------tree      | insert_level
(1 row)

(the definition column looks ok too, I didn't include it because it'd
look all messed up in the email here because it's in a single line.)

I am using Postgres version 7.2.1 on Linux.

Can anyone explain that?

Regards, Frank


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

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: md5 auth
Следующее
От: "Josh Berkus"
Дата:
Сообщение: Re: 16 parameter limit