On Wednesday, September 20, 2017 1:47:05 PM EDT Igor Korot wrote: >Thx. >So it is referring to the command not a "command returning no data". ;-) assuming create table t (c int); select c from t; - PQresultStatus(result) == PGRES_TUPLES_OK - PQntuples(result) == number or rows returned (int) insert into t(c)values(1); - PQresultStatus(result) ==PGRES_COMMAND_OK - PQcmdTuples(result) == "1" (note: char*) insert into t(c)values(1) returning c; - PQresultStatus(result) ==PGRES_TUPLES_OK - PQntuples(result) == 1 (int) >On Wed, Sep 20, 2017 at 1:42 PM, John R Pierce <pierce@xxxxxxxxxxxx> wrote: >> On 9/20/2017 10:34 AM, Igor Korot wrote: >> >From the documentation: >> https://www.postgresql.org/docs/9.1/static/libpq-exec.html >> >> [quote] >> PGRES_COMMAND_OK >> >> Successful completion of a command returning no data. >> [/quote] >> >> No data = no rows, right? >> >> from that same page, a bit farther down, clarifying the potentially >> confusing wording. >> >> If the result status is PGRES_TUPLES_OK, then the functions described below >> can be used to retrieve the rows returned by the query. Note that a SELECT >> command that happens to retrieve zero rows still shows PGRES_TUPLES_OK. >> PGRES_COMMAND_OK is for commands that can never return rows (INSERT, >> UPDATE, >> etc.). A response of PGRES_EMPTY_QUERY might indicate a bug in the client >> software.
Attachment:
signature.asc
Description: This is a digitally signed message part.