Re: Stably escaping an identifier - Mailing list pgsql-general

From Phillip Diffley
Subject Re: Stably escaping an identifier
Date
Msg-id CAGAwPgSOdaZo7G0q7+mbRRQzbccBiMTAXvL-devxpGvS0PmkRQ@mail.gmail.com
Whole thread Raw
In response to Re: Stably escaping an identifier  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-general
Thanks!

On Sun, Jun 15, 2025 at 10:11 PM Tom Lane <tgl@sss.pgh.pa.us> wrote:
Phillip Diffley <phillip6402@gmail.com> writes:
> Is there a reliable way to determine if an identifier has already been
> escaped, or alternatively is there a function that will stably escape an
> identifier such that the identifier will not change if the function is
> called repeatedly?

This is impossible in general, because you can't know if the
double-quotes are meant to be part of the identifier value.

My advice here would be to flat-out reject input identifiers that
contain double quotes.  I'd suggest banning newlines too while
at it, as those are known to create security issues in some
contexts.

                        regards, tom lane

pgsql-general by date:

Previous
From: Adrian Klaver
Date:
Subject: Re: Getting error "too many clients already" despite having a db connection limit set
Next
From: Marcin Gozdalik
Date:
Subject: Changing locale of an existing database