Re: libpq, PQExecParams and the inserting of binary data

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: libpq, PQExecParams and the inserting of binary data
Дата
Msg-id 6424.1117820918@sss.pgh.pa.us
обсуждение исходный текст
Ответ на libpq, PQExecParams and the inserting of binary data  (David Hinkle <drachs@gmail.com>)
Ответы Re: libpq, PQExecParams and the inserting of binary data
Re: libpq, PQExecParams and the inserting of binary data
Список pgsql-interfaces
David Hinkle <drachs@gmail.com> writes:
> 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. 

No, because PQescapeBytea is designed to do the escaping that would be
needed to put the bytea value into a string literal in a SQL command.
There's an extra level of backslashing involved to do that (because
backslashes are special to both the string-literal syntax and the
text input syntax for bytea).

But this is really the hard way to do it considering that you are using 
PQexecParams.  Just tell PQexecParams that you want this parameter to be
binary format, and pass the *raw* binary string as the parameter.

> I couldn't find any documentation on using PQExecParams
> with binary parameters,

src/test/examples/testlibpq3.c ... that example is reproduced in
the libpq manual, as well.
        regards, tom lane


В списке pgsql-interfaces по дате отправления:

Предыдущее
От: David Hinkle
Дата:
Сообщение: Re: libpq, PQExecParams and the inserting of binary data
Следующее
От: "Daniel Verite"
Дата:
Сообщение: Re: libpq, PQExecParams and the inserting of binary data