On Fri, Nov 22, 2013 at 4:34 PM, Mike Blackwell <mike.blackw...@rrd.com> wrote: > I believe the section you are reading refers to the BEGIN keyword in the > procedural language plpgsql, not the SQL 'BEGIN' command. The issue stems > from confusing two distinct languages both of which, along with several more > procedural languages, are documented in the same manual.
This is inherited constraint from Oracle pl/sql which pl/pgsql is, uh, inspired by. In pl/sql, all block opening constructs (THEN, LOOP, BEGIN) do not get semi-colons. BEGIN is a weird case because it's (quite unfortunately) also the same thing that explicitly opens a transaction in vanilla SQL; you use a semi-colon there as with any standard SQL statement. merlin -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers