PEPPLER.ORG
Michael Peppler
Sybase Consulting
Menu
Home
Sybase on Linux
Install Guide for Sybase on Linux
General Sybase Resources
General Perl Resources
Freeware
Sybperl
Sybase::Simple
DBD::Sybase
BCP Tool
Bug Tracker
Mailing List Archive
Downloads Directory
FAQs
Sybase on Linux FAQ
Sybperl FAQ
Personal
Michael Peppler's resume

sybperl-l Archive

Up    Prev    Next    

From: Michael Peppler <mpeppler at peppler dot org>
Subject: Re: How to implement Statement handle in CTlib?
Date: Apr 9 2000 11:18PM

ye wei writes:
 > Michael Peppler wrote:
 > 
 > > ye wei writes:
 > >  >
 > >  > Compare with DBI, I perfer Sybperl, because sybperl is much more
 > >  > flexiable, but
 > >  > I wonder if is there any way to implement a statement handle or have
 > >  > more than 1 database
 > >  > handles in a script but only keep 1 database connection in CTLib?
 > >
 > >  > So, I wonder is there any way to implement something like
 > >  > DB_Handle/Statment_Handle (DBI conception) in CTLib?
 > >  > I spent some time to study DBD::Sybase,  it seems that ct_dynamic() is
 > >  > used for allocate a statement handle.
 > >  > But ct_cynamic() is not supported in CTLib.
 > >
 > > Read the documentation for DBD::Sybase closely. If you open more than
 > > one statement handle on a connection handle DBD::Sybase will create an
 > > additional physical connection to the database.
 > 
 > Yes, that's true. However, it seems that with DBD::Sybase, I can
 > use only *one* database connection to call do() to execute non-query
 > statements with a db handle,
 > while I open a statement handle to hold some pending results.
 > 
 > $sth = $dbh->prepare("select foo from tblBar");
 > $sth->execute();
 > while(@row=$sth->fetchrow()) {
 >     ## with dbh execute SQL while statement handle is open
 >     $dbh->do("update tblBar set balance=2 ...");
 >     ...
 > }

Wrong.

The $dbh->do() call *will* open a second connection for you, even
though you may not be aware of it.

Trust me - I wrote it that way :-)

Michael
-- 
Michael Peppler         -||-  Data Migrations Inc.
mpeppler@peppler.org    -||-  http://www.mbay.net/~mpeppler
Int. Sybase User Group  -||-  http://www.isug.com
Sybase on Linux mailing list: ase-linux-list@isug.com