Bruce Momjian <pgman@candle.pha.pa.us> writes:
> I was thinking we create an updatable view if possible, and throw an
> error if they try to insert/update/delete into a non-updatable view.
Right.
> Right now we ignore such activity, but that seems wrong.
Nonsense.
regression=# create view bar as select * from foo;
CREATE VIEW
regression=# insert into bar values (1);
ERROR: cannot insert into a view
HINT: You need an unconditional ON INSERT DO INSTEAD rule.
regression=#
The only backwards-compatibility risk I see is if there's a manually
created ON-whatever rule; this probably has to override the automatic ones.
regards, tom lane