On Fri, Dec 4, 2009 at 1:47 PM, Daniel <danwgrace@gmail.com> wrote:
> I was looking for examples of using PQexecParams but all I found was
> this: http://sepp.oetiker.ch/postgresql-8.2.3-ds/libpq-example.html
>
> /* Convert integer value "2" to network byte order */
> binaryIntVal = htonl((uint32_t) 2);
> /* Set up parameter arrays for PQexecParams */
> paramValues[0] = (char *) &binaryIntVal;
> paramLengths[0] = sizeof(binaryIntVal);
> paramFormats[0] = 1; /* binary */
check out libpqtypes (http://libpqtypes.esilo.com). It does all the
binary stuff for you (which you don't need to to with PQexecParams).
with libpqtypes, you can do stuff like:
res = PQexecf(conn, "insert into foo values (%int4, %text)", 2, "test");
note: libpqtypes requires a patched libpq for client versions < 8.4
merlin