Re: Extracting data from BYTEA column to binary file using libpq

From: Diego Schulz <dschulz(at)gmail(dot)com>
To: pgsql-general(at)postgresql(dot)org
Subject: Re: Extracting data from BYTEA column to binary file using libpq
Date: 2010-09-15 00:45:13
Message-ID: AANLkTinsZ-9QQnR-7NOM6Nh+Aa=8M9+q_76rvfWUsD8T@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On Tue, Sep 14, 2010 at 6:01 PM, Julia Jacobson <julia(dot)jacobson(at)arcor(dot)de> wrote:
> Hello everybody out there using PostgreSQL,
>
> What is the problem with the following C++ code for the extraction of data
> from a BYTEA column to a binary file?
>
> #include <stdlib.h>
> #include <stdio.h>
> #include <iostream>
> #include <fstream>
> #include "libpq-fe.h"
> using namespace std;
>
> main ()
> {
>  PGconn *conn;
>  conn = PQconnectdb("hostaddr='databaseserver.com' port='5432'
> dbname='test_db' user='test_user' password='secret'");
>  int size;
>  const char* contents;
>  PGresult* res;
>  res = PQexecParams(conn,
>  "SELECT filecontent FROM pictures WHERE picture_id='3'",
>  0, NULL,NULL,NULL,NULL,
>  1);
>
>  if (res && PQresultStatus(res)==PGRES_TUPLES_OK)
>  {
>    size = PQgetlength(res, 0, 0);
>    contents = PQgetvalue(res, 0, 0);
>  }
>  ofstream myFile ("picture.jpg", ios::out | ios::binary);
>  myFile.write (contents);
>  myFile.close();
> }
>
> Thanks in advance,
> Julia
>
> --
> Sent via pgsql-general mailing list (pgsql-general(at)postgresql(dot)org)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgsql-general
>

Hi,

In addition to what Daniel Verite said, I think you should use numeric
IP address instead of the host name, or consider replacing 'hostaddr'
with 'host' if you plan to use host names.
'hostaddr' is meant to be used when you want to avoid the name resolution step.

conn = PQconnectdb("host='databaseserver.com' port='5432'
dbname='test_db' user='test_user' password='secret'");

regards,

diego

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Michael Hull 2010-09-15 00:55:12 Search then Delete Performance
Previous Message Joshua D. Drake 2010-09-15 00:30:28 Re: workaround steps for autovaccum problem