From: | "Andrey N(dot) Oktyabrski" <ano(at)antora(dot)ru> |
---|---|
To: | pgsql-ru-general(at)postgresql(dot)org |
Subject: | "updatable" view |
Date: | 2005-11-24 13:31:33 |
Message-ID: | 4385C0B5.8050704@antora.ru |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-ru-general |
Здравствуйте.
Есть ли возможность создать такое правило на представление, чтобы оно
(правило) учитывало условие из предложения update? Поясню:
ano=# CREATE TABLE t (a int, b text);
CREATE TABLE
ano=# CREATE TABLE u (id int);
CREATE TABLE
ano=# INSERT INTO u VALUES (123);
INSERT 0 1
ano=# INSERT INTO t VALUES (123, 't123');
INSERT 0 1
ano=# INSERT INTO t VALUES (321, 't321');
INSERT 0 1
ano=# INSERT INTO t VALUES (123, 't123-1');
INSERT 0 1
ano=# CREATE VIEW v AS SELECT t.a, t.b from t, u where t.a = u.id;
CREATE VIEW
ano=# SELECT * from v;
a | b
-----+--------
123 | t123
123 | t123-1
(записей: 2)
Какие правила мне надо написать, чтобы запрос
update v set b = 'bbb' where b = 't123';
проапдейтил мне только одну строку (только она удовлетворяет условию
b='t123'), а не всю таблицу t? Возможно ли это вообще?
From | Date | Subject | |
---|---|---|---|
Next Message | Serik | 2005-12-05 11:56:07 | настройка PostgresSQL для работы с NULL |
Previous Message | Andrey N. Oktyabrski | 2005-11-22 11:07:09 | То ли в ролях дырка, то ли я не понимаю чего-то |