Vous n'êtes pas identifié(e).
Pages : 1
Bonjour,
Est-il possible de faire des insert / update / delete sur une vue matérialisée étant entendu qu'on pourrait le faire avec une vue ordinaire ayant le même select ?
On en parle sans doute dans la documentation mais je n'ai pas trouvé où.
Merci pour votre attention
Hors ligne
https://www.postgresql.org/docs/current … views.html :
the materialized view cannot subsequently be directly updated
Julien.
https://rjuju.github.io/
Hors ligne
Merci mais je ne vois pas si je peux faire
CREATE MATERIALIZED VIEW mymatview ...
INSERT INTO mymatview...
DELETE FROM mymatview...
UPDATE mymatview...
Encore merci et bonne soirée
Hors ligne
Le plus simple est de tester, non ?
postgres=# create table t1(c1 integer, c2 text);
CREATE TABLE
postgres=# insert into t1 values (1, 'un');
INSERT 0 1
postgres=# create materialized view mv1 as select * from t1;
SELECT 1
postgres=# select * from mv1;
c1 | c2
----+----
1 | un
(1 row)
postgres=# insert into mv1 values (2, 'deux');
ERROR: cannot change materialized view "mv1"
postgres=# update mv1 set c2='deux' where c1=1;
ERROR: cannot change materialized view "mv1"
postgres=# delete from mv1 where c1=1;
ERROR: cannot change materialized view "mv1"
Donc non, ce n'est pas possible
Guillaume.
Hors ligne
Merci ! Et bon week-end à vous et à Dalibo
Hors ligne
Pages : 1