Re: How can I retrieve a function result? - Mailing list pgsql-general

From Luis Alberto Pérez Paz
Subject Re: How can I retrieve a function result?
Date
Msg-id 7f64980c0606131625h35e39502s7799d5a628aba033@mail.gmail.com
Whole thread Raw
In response to Re: How can I retrieve a function result?  (Joachim Wieland <joe@mcknight.de>)
List pgsql-general
Thank you Joachim,
it woks!
 
 
Regards,
 
Luis A Perez Paz
 


 
On 6/13/06, Joachim Wieland <joe@mcknight.de> wrote:
Luis,

On Tue, Jun 13, 2006 at 01:19:32PM -0500, Luis Alberto Pérez Paz wrote:
> The program works fine, actually I can verify that it executes the FUNCTION
> 'myFunction', however I dont know how can I get the return value of the
> FUNCTION 'myFunction' (as you can see in the little example the return
> value can be 0 or -900).

this is similar to retrieving the result of a query that returned one row
and one column. So you just have to use PQgetvalue(res, 0, 0).

Here are a few other examples:

Check if there were rows at all:

       if (PQntuples(res) == 0) {
               /* no rows */
               PQclear(res);
               return (char*) 0;
       }

Check if there was anything else than one column per row:

       if (PQnfields(res) != 1) {
               /* did not get only 1 column back */
               PQclear(res);
               return (char*) 0;
       }

Check whether or not the first column, first row field is NULL:

       if (PQgetisnull(res, 0, 0)) {
               /* got NULL */
               PQclear(res);
               return (char*) 0;
       }

Get the first row, first column value as char*:

       db_value = PQgetvalue(res, 0, 0);


I hope this gives you an idea.

Those functions are in this section of the documentation:

http://www.postgresql.org/docs/8.1/static/libpq-exec.html#LIBPQ-EXEC-SELECT-INFO

Joachim



--
paz, amor y comprensión
        (1967-1994)

pgsql-general by date:

Previous
From: "Jim C. Nasby"
Date:
Subject: Re: postgres vs. oracle for very large tables
Next
From: Trent Shipley
Date:
Subject: Re: Fabian Pascal and RDBMS deficiencies in fully implementing