Search Postgresql Archives

Re: How can I retrieve a function result?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux