Michael Peppler
Sybase Consulting
Sybase on Linux
Install Guide for Sybase on Linux
General Sybase Resources
General Perl Resources
BCP Tool
Bug Tracker
Mailing List Archive
Downloads Directory
Sybase on Linux FAQ
Sybperl FAQ
Michael Peppler's resume

sybperl-l Archive

Up    Prev    Next    

From: Michael Peppler <mpeppler at peppler dot org>
Subject: Re: Moving to a specific row
Date: Aug 31 2000 6:31PM

ye, wei writes:
 > Michael Peppler wrote:
 > > Andrew Armstrong writes:
 > >  > I routinely have to report large numbers of database table rows to a web page
 > >  > and was having a problem limiting the number of rows I display using the
 > >  > standard CTlib methods. I can use set rowcount xxxx but this only limits the
 > >  > resultset to the first xxxx rows. I want to be able to move the resultset to a
 > >  > row that I choose. I can do this in PHP and was wondering how the best way to do
 > >  > this in Perl would be.
 > >  >
 > >  > The only solution that i have found is to call ct_fetch() xxxx times and ignore
 > >  > the results or to use ct_sql to move the results into an array and start at the
 > >  > xxxx element. Neither of these seem very good for system performace.
 > >  >
 > >
 > > I don't see how PHP could do this any better than perl. It is limited
 > > by what Sybase understands, and in this particular case it is limited
 > > by the way SQL works.
 > Just read PHP Sybase module, it seems that in sybase_query(), it reads
 > *ALL* results into memory, then it can use sybase_data_seek() to locate record
 > position later.

Right - you could do the same thing using ct_sql() (or
Sybase::Simple's ArrayOfHash()). The downside for sybperl is that the
code is implemented in perl, which would be a little slower than C.

I hope PHP has some row limit so that a runaway query doesn't crash
the webserver...

Michael Peppler         -||-  Data Migrations Inc.    -||-
Int. Sybase User Group  -||-
Sybase on Linux mailing list: