Re: C++ code - PGRES_TUPLES_OK is not returned when DELETE performed

From: Dmitriy Igrishin <dmitigr(at)gmail(dot)com>
To: Yan Cheng CHEOK <yccheok(at)yahoo(dot)com>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: C++ code - PGRES_TUPLES_OK is not returned when DELETE performed
Date: 2010-12-15 09:57:20
Message-ID: AANLkTikZRHjn_4iTbGfs1rq46GSc8_igcdibMA-jSGEz@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Hey Yan Cheng,

The status of command is PGRES_COMMAND_OK only when performed
command was not returns data, e.g. DELETE (without RETURNING clause),
BEGIN, COMMIT etc.
The status PGRES_TUPLES_OK only when performed command was
SELECT, SHOW or UPDATE / DELETE with RETURNING clause and etc.

2010/12/15 Yan Cheng CHEOK <yccheok(at)yahoo(dot)com>

> I realize for the following code :
>
> PGconn *connection = this->connection.getConnection();
> PGresult *res = PQexec(connection, "DELETE FROM measurement_statistic WHERE
> fk_lot_id = 47");
>
> // status always false??
> const bool status = (PQresultStatus(res) == PGRES_TUPLES_OK);
>
> status will always remain false, although the actual row in database had
> been delete.
>
> I execute the above statement (DELETE FROM measurement_statistic WHERE
> fk_lot_id = 47) through pgadmin. It works fine.
>
> May I know why PGRES_TUPLES_OK is not being returned when I use DELETE?
> When I try to execute SELECT statement, PGRES_TUPLES_OK can be returned.
>
> Thanks and Regards
> Yan Cheng CHEOK
>
>
>
>
> --
> Sent via pgsql-general mailing list (pgsql-general(at)postgresql(dot)org)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgsql-general
>

--
// Dmitriy.

In response to

Browse pgsql-general by date

  From Date Subject
Next Message venkat 2010-12-15 10:23:32 How to convert string to integer
Previous Message Andrus Moor 2010-12-15 09:29:09 How to restore from backup to 8.4.3 server using 9.0 dump/restore