@@ -3256,23 +3256,25 @@ size_t PQescapeStringConn(PGconn *conn,
3256
3256
3257
3257
<listitem>
3258
3258
<para>
3259
+ <function>PQescapeString</> is an older, deprecated version of
3260
+ <function>PQescapeStringConn</>.
3259
3261
<synopsis>
3260
3262
size_t PQescapeString (char *to, const char *from, size_t length);
3261
3263
</synopsis>
3262
3264
</para>
3263
3265
3264
3266
<para>
3265
- <function>PQescapeString </> is an older, deprecated version of
3266
- <function>PQescapeStringConn </>; the difference is that it does
3267
- not take <parameter>conn</> or <parameter>error</> parameters.
3267
+ The only difference from <function>PQescapeStringConn </> is that
3268
+ <function>PQescapeString </> does not take <structname>PGconn</>
3269
+ or <parameter>error</> parameters.
3268
3270
Because of this, it cannot adjust its behavior depending on the
3269
3271
connection properties (such as character encoding) and therefore
3270
3272
<emphasis>it might give the wrong results</>. Also, it has no way
3271
3273
to report error conditions.
3272
3274
</para>
3273
3275
3274
3276
<para>
3275
- <function>PQescapeString</> can be used safely in single-threaded
3277
+ <function>PQescapeString</> can be used safely in
3276
3278
client programs that work with only one <productname>PostgreSQL</>
3277
3279
connection at a time (in this case it can find out what it needs to
3278
3280
know <quote>behind the scenes</>). In other contexts it is a security
@@ -3304,16 +3306,11 @@ unsigned char *PQescapeByteaConn(PGconn *conn,
3304
3306
</para>
3305
3307
3306
3308
<para>
3307
- Certain byte values <emphasis>must</emphasis> be escaped (but all
3308
- byte values <emphasis>can</emphasis> be escaped) when used as part
3309
- of a <type>bytea</type> literal in an <acronym>SQL</acronym>
3310
- statement. In general, to escape a byte, it is converted into the
3311
- three digit octal number equal to the octet value, and preceded by
3312
- usually two backslashes. The single quote (<literal>'</>) and backslash
3313
- (<literal>\</>) characters have special alternative escape
3314
- sequences. See <xref linkend="datatype-binary"> for more
3315
- information. <function>PQescapeByteaConn</function> performs this
3316
- operation, escaping only the minimally required bytes.
3309
+ Certain byte values must be escaped when used as part of a
3310
+ <type>bytea</type> literal in an <acronym>SQL</acronym> statement.
3311
+ <function>PQescapeByteaConn</function> escapes bytes using
3312
+ either hex encoding or backslash escaping. See <xref
3313
+ linkend="datatype-binary"> for more information.
3317
3314
</para>
3318
3315
3319
3316
<para>
@@ -3370,20 +3367,13 @@ unsigned char *PQescapeBytea(const unsigned char *from,
3370
3367
<para>
3371
3368
The only difference from <function>PQescapeByteaConn</> is that
3372
3369
<function>PQescapeBytea</> does not take a <structname>PGconn</>
3373
- parameter. Because of this, it cannot adjust its behavior
3374
- depending on the connection properties (in particular, whether
3375
- standard-conforming strings are enabled) and therefore
3376
- <emphasis>it might give the wrong results</>. Also, it has no
3377
- way to return an error message on failure.
3378
- </para>
3379
-
3380
- <para>
3381
- <function>PQescapeBytea</> can be used safely in single-threaded
3382
- client programs that work with only one <productname>PostgreSQL</>
3383
- connection at a time (in this case it can find out what it needs
3384
- to know <quote>behind the scenes</>). In other contexts it is
3385
- a security hazard and should be avoided in favor of
3386
- <function>PQescapeByteaConn</>.
3370
+ parameter. Because of this, <function>PQescapeBytea</> can
3371
+ only be used safely in client programs that use a single
3372
+ <productname>PostgreSQL</> connection at a time (in this case
3373
+ it can find out what it needs to know <quote>behind the
3374
+ scenes</>). It <emphasis>might give the wrong results</> if
3375
+ used in programs that use multiple database connections (use
3376
+ <function>PQescapeByteaConn</> in such cases).
3387
3377
</para>
3388
3378
</listitem>
3389
3379
</varlistentry>
0 commit comments