pg.ddx.io  pgsql-interfaces@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Peter T Mount <peter@retep.org.uk>
To: Michael Stephenson <mstephenson@tirin.openworld.co.uk>
Cc: pgsql-interfaces@postgresql.org
Subject: Re: Number of rows in a ResultSet ?
Date: Thu, 18 Jan 2001 10:23:07 -0500 (EST)
Message-ID: <979831387.3a670a5b6ed23@webmail.retep.org.uk> (raw)
In-Reply-To: <Pine.LNX.4.30.0101181434130.2688-100000@tirin.openworld.co.uk>
References: <Pine.LNX.4.30.0101181434130.2688-100000@tirin.openworld.co.uk>

Quoting Michael Stephenson <mstephenson@tirin.openworld.co.uk>:

> > I need to know how many rows exist in a ResultSet. I've tried to use
> > getFetchSize() method of ResultSet interface, but a message was
> > displayed "this method is not yet implemented".
> >
> > Anyone can help me ?
> 
> You could use:
>   ResultSet.last();
>   int numberOfRows = ResultSet.getRow();
> 
> Now, my understanding of this area is a but sketchy, but I think that
> most implementations of ResultSet do not get all of the results in one
> go
> (like the PostgreSQL JDBC driver does), so getFetchSize() is not a safe
> way of determining the number of results returned.

Until about 30 minutes ago getFetchSize() threw an SQLException as it wasn't 
implemented ;-)

For normal ResultSet's in 7.1 getFetchSize() will return the number of rows, 
but I'd advise you use Michael's suggestion as it's probably the safest bet for 
TYPE_SCROLL_INSENSITIVE & TYPE_SCROLL_SENSITIVE ResultSets (remember 
technically TYPE_FORWARD_ONLY ResultSet's should not allow you to go back after 
the .last() call).

Peter
> 
> Or, you could do another query with count() in your sql..
> 
> Or (and I wouldn't do this without carefully looking at the jdbc spec),
> you could just alter the getFetchSize() method
> org.postgresql.jdbc2.ResultSet driver to look like:
> 
>     public int getFetchSize() throws SQLException
>     {
> 	return rows.size();
>     }
> 
> The choice is yours..
> 
> Michael Stephenson      mstephenson@openworld.co.uk
> Developer   -    Web Applications    -   Open World
> Tel: +44 1225 444 950         Fax: +44 1225 336 738
> 
> 



-- 
Peter Mount peter@retep.org.uk
PostgreSQL JDBC Driver: http://www.retep.org.uk/postgres/
RetepPDF PDF library for Java: http://www.retep.org.uk/pdf/



view thread (3+ messages)

Message-ID: <979831387.3a670a5b6ed23@webmail.retep.org.uk>
Permalink:  ../979831387.3a670a5b6ed23@webmail.retep.org.uk/
Also on:    postgresql.org/message-id/979831387.3a670a5b6ed23@webmail.retep.org.uk

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-interfaces@postgresql.org
  Cc: peter@retep.org.uk, mstephenson@tirin.openworld.co.uk
  Subject: Re: Number of rows in a ResultSet ?
  In-Reply-To: <979831387.3a670a5b6ed23@webmail.retep.org.uk>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox