Search Postgresql Archives

Re: ('dog$house' = quote_ident('dog$house')) is surprisingly FALSE

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




> On Oct 5, 2022, at 17:16, Bryn Llewellyn <bryn@xxxxxxxxxxxx> wrote:
> B.t.w, the value of "quote_ident()" rests on the distinction between a name (what you provide with the function's actual argument) and an identifier (what it returns).

There is no first-class "identifier" type in PostgreSQL, so a function can't "return an identifier."  It returns a string which might, when placed into a larger string and processed as SQL, be lexically correct as an identifier.

To be useful, quote_ident() can't fail to quote a string in such a way that it's not a valid identifier to PostgreSQL.  If it quotes some strings that PostgreSQL would accept as identifiers without quotes, that's interesting, I guess, but I'm not sure I see how it is a bug.

Pragmatically, what this function is for it to assemble SQL statements as strings.  Any review of its correctness needs to be based on a situation where it can't be used for that.





[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]

  Powered by Linux