Re: insert into a view?
| От | Tom Lane |
|---|---|
| Тема | Re: insert into a view? |
| Дата | |
| Msg-id | 21400.1146529968@sss.pgh.pa.us обсуждение |
| Ответ на | insert into a view? ("Karen Hill" <karen_hill22@yahoo.com>) |
| Ответы |
Re: insert into a view?
|
| Список | pgsql-general |
"Karen Hill" <karen_hill22@yahoo.com> writes:
> Tried it but didn't work. It gave me a hint though to try triggers.
> Can anyone show me how to do an insert into a view using triggers?
I hope it said rules, because you can't put a trigger on a view.
regression=# create table t(f1 int, f2 text);
CREATE TABLE
regression=# create view v as select * from t;
CREATE VIEW
regression=# insert into v values(22, 'foo');
ERROR: cannot insert into a view
HINT: You need an unconditional ON INSERT DO INSTEAD rule.
regression=# create rule r as on insert to v do instead
regression-# insert into t values(new.*);
CREATE RULE
regression=# insert into v values(22, 'foo');
INSERT 0 1
regression=# select * from t;
f1 | f2
----+-----
22 | foo
(1 row)
regards, tom lane
В списке pgsql-general по дате отправления: