|
|
sybperl-l Archive
Up Prev Next
From: ye wei <yw at alabanza dot net>
Subject: Re: How to implement Statement handle in CTlib?
Date: Apr 9 2000 12:37AM
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 ...");
...
}
But I can not do that with Sybase::CTlib with only 1 database connection.
I have to open an additional db connection for the update sql.
Any help is very appericiated!!!
>
>
> So you just need to open additional connections if you absolutely need
> to have pending results on various statement handles.
>
> 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
--
Sincerely,
Ye wei
|