Curt Russell Crandall wrote:
> No that wasn't the case here.  Each select only produces 1 result row.

Are you really sure it was 1 row?

> So, I just did a
> 
> $sth->execute(....) or die(...);
> $href = $sth->fetchrow_hashref();

I would try 

   while ($href = $sth -> fetchrow_hashref)

instead.

> In the method... the method is executed in a loop within the caller.
> With Sybase, it was necessary to insert a finish after the call to
> fetchrow_hashref...

I never seen that and will believe it only if I see some code.
You don't have to call finish if you have fetched _all_ results.

> from what I recall, the error happened at compile time
> and didn't even attempt execution (I could be wrong about that, though).
> 
> So for me, there were 2 morals of the story here.  First, in regards to
> the original question, it's not necessary to keep doing a prepare just
> because you call finish on the statement handle.  Second, avoid Sybase
> whenever possible.

Sybase is a nice database, I don't understand why are you saying this.

> I've been doing most of my DBI development with
> Informix and when I started working with Sybase it's been one problem
> after the other... i.e. no placeholders in statements executing stored
> procs, can't have multiple statement handles open on a db handle with
> AutoCommit off, etc. etc.  Some of this may be due to the fact that the
> Sybase driver is not current (I have no choice), 

What hinders you to install the current Perl module (DBD::Sybase or 
Sybperl)? You can always do that (for example in your home dir).

> but the concensus I've
> heard from people who've worked with Sybase and another db such as Oracle,
> Informix, DB2 is that Sybase is garbage.

Reply via email to