Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com> writes:
> I don't would to execute function - it is useless because you need
> good UI for execution all path. My idea is different. gram.y has
> check_sql_expr rutine. This is used for parser checking every static
> SQL fragment in plpgsql function. With some hook we can do full plan
> generation instead.
Previous proposals in this line have foundered on examples like
functions that create a temp table and then manipulate it.
Only DDL-free functions can be statically checked in the way
you suggest.
Between that and the parameter-related limitations that Hitoshi
points out, the use case seems to be rather restricted ...
regards, tom lane