Re: UPDATE works on a view? - Mailing list pgsql-admin

From Magnus Hagander
Subject Re: UPDATE works on a view?
Date
Msg-id CABUevEx-ymj4O780QS48qewJ1HygM3AXJ4UrtL7GRw8aPaijew@mail.gmail.com
Whole thread Raw
In response to Re: UPDATE works on a view?  (Paul Förster <paul.foerster@gmail.com>)
Responses Re: UPDATE works on a view?  (Paul Förster <paul.foerster@gmail.com>)
List pgsql-admin


On Thu, Aug 6, 2020 at 7:56 AM Paul Förster <paul.foerster@gmail.com> wrote:
Hi Oliver,

> On 05. Aug, 2020, at 20:30, Wells Oliver <wells.oliver@gmail.com> wrote:
>
> Err, sorry if this is back to basics, but I was very confused by someone being able to UPDATE myview SET col = 1 and the underlying table actually being updated properly.
>
> Is this recent? When did we become able to UPDATE on views?

yes, this is possible:

postgres=# create table t(i int);
CREATE TABLE
postgres=# create view v(i) as select i from t;
CREATE VIEW
postgres=# insert into v(i) values (0);
INSERT 0 1
postgres=# select * from v;
 i
---
 0
(1 row)

postgres=# update v set i=3;
UPDATE 1
postgres=# select * from v;
 i
---
 3
(1 row)

But I don't know since which PostgreSQL version views can up updated.


For this type of high level features, the Feature Matrix is a pretty good way to find out these things (https://www.postgresql.org/about/featurematrix/#views-materialized-views).

Updatetable views was 9.3, WITH CHECK was 9.4. 


--

pgsql-admin by date:

Previous
From: Paul Förster
Date:
Subject: Re: UPDATE works on a view?
Next
From: Paul Förster
Date:
Subject: Re: UPDATE works on a view?