On 2013-11-15 16:09, Thara Vadakkeveedu wrote:
> "First, is this code in a plpgsql contex"?
> No, that is my problem.
> Does it have to be inside a Create function block or can justwrapping
> the if with a BEGIN END; suffice ?
>
Control structures like if statements don't exist in straight sql - you
need a procedural language like pl/pgsql for that. Wrapping sql
statements in begin/end only affects the transactional context of the
statements, it does not cause them to be interpreted as pl/pgsql. You
can either create a function or you can use a "DO" block, which is
sometimes what I use for deploy scripts
[http://www.postgresql.org/docs/9.3/static/sql-do.html]