Extracting data from BYTEA column to binary file using libpq - Mailing list pgsql-general

From Julia Jacobson
Subject Extracting data from BYTEA column to binary file using libpq
Date
Msg-id 4C8FF0AE.5040506@arcor.de
Whole thread Raw
Responses Re: Extracting data from BYTEA column to binary file using libpq
Re: Extracting data from BYTEA column to binary file using libpq
List pgsql-general
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

pgsql-general by date:

Previous
From: David Fetter
Date:
Subject: Re: workaround steps for autovaccum problem
Next
From: Gary Fu
Date:
Subject: select sql slow inside function