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