I also think that a view is supposed to be just that -- a *view* of
underlying data, which in no way modifies the data. I don't know much
about the design ideas behind SQL, but I think this view of views
(haha) is an underlying assumption. If you are modifying data when
you do a select on a view, you are probably not using SQL the way it
was intended (not that that is a bad thing, but ...)
Postgresql has "rules" which I *think* can rewrite select statements.
Rules are kind of a pain, but maybe what you want.
On 2/24/07, Webb Sprague <webb.sprague@gmail.com> wrote:
> >. I have _additional_
> > constraints to place on modifications done through
> > views, and trickyness involved in modifying the
> > underlying tables.
>
> Write a function foo that returns a set, then a view: "create view as
> select * from foo()". Incorporate all the trickiness in the function,
> including variables, multiple temporary tables, whatever you need.
>