Re: Multi insert statement and getUpdateCount(). - Mailing list pgsql-jdbc

From Jeremy Whiting
Subject Re: Multi insert statement and getUpdateCount().
Date
Msg-id 55153E4D.2020201@redhat.com
Whole thread Raw
In response to Re: Multi insert statement and getUpdateCount().  (dmp <danap@ttc-cmc.net>)
List pgsql-jdbc
On 26/03/15 19:41, dmp wrote:
> Jeremy Whiting wrote:
>> Hi,
>>   I have been testing the current version of pgjdbc master branch. I
>> added a
>> test case to a branch in my repo [1] to check the behaviour when a
>> multi insert
>> statement adds two rows to a table. I found the return value when
>> calling
>> .getUpdateCount() does not equal the number of rows affected.
>>
>>   My question is what should the return value for .getUpdateCount()
>> represent.
>> Is it the number of statements executed or rows put in the database ?
>>
>> Regards,
>> Jeremy
>>
>> [1]
>> https://github.com/whitingjr/pgjdbc/tree/updatecount-mismatches-updatecount
>>
>
> My quick test shows it seems to be represent the the rows effected.
> That is
> using a single statement with multiple insert values. (3)
>
> INSERT INTO "public"."key_table4" ("avatar_id", "user_id", "bing_id")
> VALUES
> (3, 21, 20),
> (5, 17, 31),
> (8, 5, 7);
>
> If you are using single insert statements I would assume it will
> always return
> (1).
>
> According to the Java API
>
> Retrieves the current result as an update count; if the result is a
> ResultSet object or there are no more results, -1 is returned. This
> method should be called only once per result.
>
> Seems correct, rows effected. Using postgresql-9.4-1200.jdbc4.jar, not
> current
> repository though.
>
> danap.
>
>
  Thanks for your reply. It prompted me to do some more testing and
stepping through the code.

  I found the return value for your example will be
-1 == .getUpdateCount()

  whereas the int array return value for the method call .executeBatch()
int[] == {3}

  Thanks again for helping me to understand this better.

Jeremy



pgsql-jdbc by date:

Previous
From: Adam Mackler
Date:
Subject: Does PGInterval class handle iso_8601 intervalstyle?
Next
From: Kris Jurka
Date:
Subject: Re: Does PGInterval class handle iso_8601 intervalstyle?