Re: standard_conforming_strings and pg_escape_string() - Mailing list pgsql-general

From Tom Lane
Subject Re: standard_conforming_strings and pg_escape_string()
Date
Msg-id 6570.1240527393@sss.pgh.pa.us
Whole thread Raw
In response to standard_conforming_strings and pg_escape_string()  (Conrad Lender <crlender@gmail.com>)
Responses Re: standard_conforming_strings and pg_escape_string()
List pgsql-general
Conrad Lender <crlender@gmail.com> writes:
> I'm using PostgreSQL 8.3 with PHP's "pgsql" module (libpq 8.3.7). When
> the server's standard_conforming_strings setting is off (this is
> currently still the default, I believe), I use something like this to
> escape strings:

>   if ($escWildcards) {
>     $str = strtr($str, array("%" => '\%', "_" => '\_'));
>   }
>   return "E'" . pg_escape_string($str) . "'";

The above cannot possibly work.  pg_escape_string is generating what it
supposes to be a normal string literal, and then you are sticking an 'E'
on the front which changes the escaping rules.  It is not the function's
fault that this fails.

            regards, tom lane

pgsql-general by date:

Previous
From: Martin Gainty
Date:
Subject: Re: Dynamic SQL in Function
Next
From: Adam Ruth
Date:
Subject: