Richard Huxton <[EMAIL PROTECTED]> writes:
> I think it's just the brackets () - plpgsql's parser isn't terribly 
> sophisticated.

It's not plpgsql's fault --- you'll get the same result if you put
parentheses around a DELETE command at the SQL command line.

regression=# (delete from fool);
ERROR:  syntax error at or near "delete"
LINE 1: (delete from fool);
         ^

The OP may be used to putting parens into his FOR loops because it
works with SELECT:

regression=# (select * from zz1);
 f1 | f2 | f3 
----+----+----
(0 rows)

The difference is that SELECT can be put into larger groupings (eg
UNIONs) so it has to be parenthesiz-able.  If we ever considered
supporting DELETE RETURNING as a component of larger queries, this
syntax difference would likely go away.

                        regards, tom lane

---------------------------(end of broadcast)---------------------------
TIP 2: Don't 'kill -9' the postmaster

Reply via email to