Re: libpq, PQExecParams and the inserting of binary data

From: Volkan YAZICI <volkan(dot)yazici(at)gmail(dot)com>
To: David Hinkle <drachs(at)gmail(dot)com>
Cc: pgsql-interfaces(at)postgresql(dot)org
Subject: Re: libpq, PQExecParams and the inserting of binary data
Date: 2005-06-03 16:43:34
Message-ID: 7104a7370506030943662e4be@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-interfaces

Hi,

On 6/3/05, David Hinkle <drachs(at)gmail(dot)com> wrote:
> As you can see, I assumed I could use PQexapeBytea to escape the
> binary data and then just use the returned value as a text parameter.

You don't need to (also you shouldn't) escape any data while using
parameters. Because, you'll miss one big advantage of parameter usage.
>From PQexecParams() documentation:

«The primary advantage of PQexecParams over PQexec is that parameter
values may be separated from the command string, thus avoiding the
need for tedious and error-prone quoting and escaping. Unlike PQexec,
PQexecParams allows at most one SQL command in the given string.
(There can be semicolons in it, but not more than one nonempty
command.) This is a limitation of the underlying protocol, but has
some usefulness as an extra defense against SQL-injection attacks.»

Regards.

In response to

Responses

Browse pgsql-interfaces by date

  From Date Subject
Next Message David Hinkle 2005-06-03 17:36:38 Re: libpq, PQExecParams and the inserting of binary data
Previous Message David Hinkle 2005-06-03 16:18:25 libpq, PQExecParams and the inserting of binary data