Re: libpq (C++) - Insert binary data

From: Merlin Moncure <mmoncure(at)gmail(dot)com>
To: GOO Creations <goocreations(at)gmail(dot)com>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: libpq (C++) - Insert binary data
Date: 2010-09-30 20:59:46
Message-ID: AANLkTikpUpioMh_+-tXBdGQQCFLKx2G1iNWbHKECVu-_@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On Thu, Sep 30, 2010 at 11:42 AM, GOO Creations <goocreations(at)gmail(dot)com> wrote:
>  Yes there is a reason I'm not using Qt's libraries. Qt doesn't come out
> with PSQL as default driver (meaning you have to manually download the
> driver for Qt postgres). I'm developing a plugin for an app that restricts
> Qt, no extra depedncies are allowed. But the app has libpq as dependcy, so
> I'm able to use that.

here is my response from the previous time I answered the question.
There a number of ways to deal with this (my favorite by far is
libpqtypes, but I'm quite biased!):

On Wed, Jul 21, 2010 at 9:27 AM, Merlin Moncure <mmoncure(at)gmail(dot)com> wrote:
> On Mon, Jul 19, 2010 at 8:14 PM, vinicius_bra <viniciusams(at)yahoo(dot)com(dot)br> wrote:
>>
>> Hi All,
>>
>> I'm developing a system in C and I have a unsigned char pointer that
>> represents a struct and I like to store it in a bytea column in postgreSQL.
>> How can I do it?
>> Example:
>
> you have several options:
> *) encode the memory for the structure PQescapeStringConn and send to
> PQexec (my least favorite method)
> *) set up a call to PQexecParams (more work, but faster and no escaping)
> *) make a composite type on the server and send your structure in a
> more classical SQL way
> *) use libpqtypes (this is the most set up work, but the best in the
> long run) :-)
>
> w/libpqtypes:
> PGbytea b = {sizeof(s), &s};
> PGresult *res = PQexecf(conn, "insert into t values (%bytea)", b);
> PQclear(res);
>
> merlin
>

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Dann Corbit 2010-09-30 22:35:11 Kudos on the 64 bit PostgreSQL for Windows
Previous Message Dr. Peter Voigt 2010-09-30 20:53:54 Re: PostgreSQL 9.0 (x86-64) and Windows 7 (x86-64) - Unable to install