>. 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.