Re: DELETE...RETURNING problem with libpq - Mailing list pgsql-sql

From Wolfe Whalen
Subject Re: DELETE...RETURNING problem with libpq
Date
Msg-id 1369483241.9028.140661235555577.5F2DB852@webmail.messagingengine.com
Whole thread Raw
In response to DELETE...RETURNING problem with libpq  (Brice André <brice@famille-andre.be>)
Responses Re: DELETE...RETURNING problem with libpq  (Brice André <brice@famille-andre.be>)
List pgsql-sql
Hi Brice,
 
I believe that you'll need PQcmdTuples - "Returns the number of rows affected by the SQL command."
 
Watch out, it returns char* instead of int.  I believe it's supposed to be used for the UPDATE ... RETURNING as well, but I'd double check on that.
 
It's under "30.3.3. Retrieving Result Information for Other Commands" in the 8.4 docs ("These functions are used to extract information from PGresult objects that are not SELECT results."):
 
Let us know if that helps or if we should dig into it a little deeper.
 
Best regards,
 
Wolfe
 
--
Wolfe Whalen
wolfe@quios.net
 
 
 
On Sat, May 25, 2013, at 04:07 AM, Brice André wrote:
Dear all,
 
I am trying to translate a code written in php to C++. So, I am now using lipq in order to access my postgresql database from C++.
 
As performance is an important feature, I am using prepared statements.
 
I have a SQL statement that performs a 'DELETE ... RETURNING ... ' stuff and I execute it from a prepared statement (using PQprepare and PQexecPrepared). Now, when I execute this command, it properly deletes requested row, but when I use command PQntuples, it returns 0, as if no data was returned.
 
When I execute the same sql command from PgAdmin or from my old php script (that did not use prepared statements), everything works fine.
 
Note that, in another part of my script, I use the same technique to perform an 'UPDATE ... RETURNING' and it works properly...
 
Does anyone has an idea of what may fail and how I can solve this problem ?
 
Regards,
Brice
 
PS : my postgresql server version is 8.4 and it is running on a Debian server, if it may help.

pgsql-sql by date:

Previous
From: Marc Mamin
Date:
Subject: Re: reduce many loosely related rows down to one
Next
From: Brice André
Date:
Subject: Re: DELETE...RETURNING problem with libpq