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: "Jeff Greif" <jmg at trivida dot com>
Subject: questions re array binding and improved network performance
Date: Aug 17 1999 6:10PM

I've been looking at both the Sybase::CTlib and Open Client Library docs.
It's unclear (to me) from the latter that if array binding is used to
retrieve multiple rows at a time, that this actually reduces the number of
calls across the network to the server (assuming the packet size is big
enough to hold more than one row's worth of data).  Does this happen in
ordinary language command execution, or only when cursors are used?

Secondly, is there some way to use the Sybperl ct_sql in such a way that
array binding is used internally to improve performance?  What I'd like, I
guess, is to be able to give an additional parameter to ct_sql to have it
suck the result rows off the server in batches of 20 or 50 as it builds the
Perl arrays containing the results.  Is there any way to use ct_execute or
ct_command used this way along with ct_fetch?  I didn't see Sybperl
documentation of anything like the Open Client Library's ctbind which is
what's used for array binding.

If array binding is either not useful in the Sybperl implementation, or
hasn't been implemented yet but is on someone's wishlist, is there some
alternative way to achieve this optimization.

Finally, I've hit the same wall as many others in being unable to access MS
SQL Server 7 from Sybperl.  Has anyone heard whether Sybase plans to modify
the Open Client Library or network layer to work around this

I'm a new subscriber to the list, but I did look at the Sybperl FAQ and
browse the archive of the list for 1999 before troubling you.  Thanks for
any info you can provide.

Jeff Greif
TriVida Corp.
3524 Hayden Ave.
Culver City, CA 90232