Re: BUG #16519: SET SESSION ROLE in plpgsql requires string literal.

From: "David G(dot) Johnston" <david(dot)g(dot)johnston(at)gmail(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: "mbwiese(at)gmail(dot)com" <mbwiese(at)gmail(dot)com>, "pgsql-bugs(at)lists(dot)postgresql(dot)org" <pgsql-bugs(at)lists(dot)postgresql(dot)org>
Subject: Re: BUG #16519: SET SESSION ROLE in plpgsql requires string literal.
Date: 2020-06-30 17:50:18
Message-ID: CAKFQuwbgKpR6TN3xnxsE2k4Zdkb81C-Sv7UMZUxK=O7TTHULCA@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

On Tuesday, June 30, 2020, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:

> "David G. Johnston" <david(dot)g(dot)johnston(at)gmail(dot)com> writes:
> > The SET command cannot be parameterized so using variables in the
> statement
> > is not supported and the attempt to do so is treated as writing an
> > identifier. You will need to use the format function and the execute
> > plpgsql command to create and execute the statement.
>
> While this is documented (last para of "42.11.1. Variable Substitution"),
> it's not exactly prominent. Should we move that to somewhere more
> visible? If so where?
>

I think the docs are acceptable as-is - especially given the numerous
cross-references to that section. If anything i’d maybe call out that most
non-result returning commands are actually not parameterized in “42.2.5
Executing a Command with No Result” just before the link to 42.11.1

David J.

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Michael Meskes 2020-06-30 18:15:23 Re: [BUG][PATCH] ecpg crash with bytea type and cursors
Previous Message PG Bug reporting form 2020-06-30 17:30:33 BUG #16520: Deleting from non-existent column in CTE removes all rows