Re: MySQL ResultSet - count rows?



Dyreatnews@xxxxxxx wrote:
Christoph <christoph.burschka@xxxxxxxxx> writes:

Hello,

I am writing the data of a ResultSet object to an array. To declare
the array length, I need to know the number of rows before copying
them - is there a way to read the row count instantly, without having
to iterate anything?

No. You could execute 'SELECT COUNT(*) ...' first but then you
essentially traverse all the rows twice.

One should realize that in doing so you are not determining the number of rows at the moment of retrieval, but the number of rows a few moments before the actual retrieval. Whether this is an important distinction depends with the volatility of the table and the use you will make if this number. On any system used by more than one user/process, these numbers *will* be different, sooner or later.

In short: this is not the way to go.

Regards,

Ruud de Koter.

(There could be non-standard MySQL extensions that lets you do this, I
don't know)

PHP has mysql_count_rows, but I'm not sure what that does internally -
it may just iterate over the data too.

.



Relevant Pages

  • Re: [ANN] Rio 0.3.4
    ... > Will a modification of IRB with RIO, and a few other things, possibly result ... >> Ways to get the chomped lines of a file into an array ... >> Iterate over only the files in a directory ... >> * New Grande Selection parameter. ...
    (comp.lang.ruby)
  • [ANN] Rio 0.3.4
    ... Rio is a Ruby I/O convenience class wrapping much of the functionality ... Copy or append a file to a string ... Ways to get the chomped lines of a file into an array ... Iterate over only the files in a directory ...
    (comp.lang.ruby)
  • [ANN] Rio 0.3.7
    ... Rio is a Ruby I/O convenience class wrapping much of the functionality ... Copy or append a file to a string ... Ways to get the chomped lines of a file into an array ... Iterate over only the files in a directory ...
    (comp.lang.ruby)
  • [ANN] Rio 0.4.1
    ... = Rio - Ruby I/O Facilitator ... Iterate over the .rb files in a directory and its subdirectories. ... Return an array of the .rb files in a directory and its ... Copy or append a file to a string ...
    (comp.lang.ruby)
  • {ANN] Rio 0.4.0
    ... = Rio - Ruby I/O Facilitator ... Iterate over the .rb files in a directory and its subdirectories. ... Return an array of the .rb files in a directory and its ... Copy or append a file to a string ...
    (comp.lang.ruby)