Beefy Boxes and Bandwidth Generously Provided by pair Networks
Syntactic Confectionery Delight
 
PerlMonks  

DBlib dbnextrow(1,1) problem

by Kargil Jay (Initiate)
on Apr 01, 2011 at 23:33 UTC ( [id://897029]=perlquestion: print w/replies, xml ) Need Help??

Kargil Jay has asked for the wisdom of the Perl Monks concerning the following question:

Salutations to monks. I observed that perl (5.005_03) with DBlib behaves in an unexpected way, when $dbh->dbnextrow(return_hash=1,return_ref=1) is called; For first dbnextrow(1,1) call all fine. But second dbnextrow(1,1) call over writes the first reference returned.

I solved the problem by using dbnextrow(1,0) (getting hash instead of hash ref) But just wondering where is the problem

$ /apps/gnu/bin/perl use Sybase::DBlib; $dbh = new Sybase::DBlib (SERVER,USER,PASS); $dbh->dbcmd('select ser=@@servername'); $dbh->dbsqlexec; $dbh->dbresults; $a = $dbh->dbnextrow(1,1); $dbh->dbcmd('select dt=getdate()'); $dbh->dbsqlexec; $dbh->dbresults; $b = $dbh->dbnextrow(1,1); print " a-ser: $a->{'ser'} \n\n"; # this becomes non-existant print " a-dt: $a->{'dt'} \n\n"; # this value suddenly appears, whi +ch was not even present in the original query print " b-ser: $b->{'ser'} \n\n"; print " b-dt: $b->{'dt'} \n\n"; __END__ OUTPUT : -------- a-ser: a-dt: Mar 30 2011 8:37:50:646PM b-ser: b-dt: Mar 30 2011 8:37:50:646PM

Replies are listed 'Best First'.
Re: DBlib dbnextrow(1,1) problem
by mpeppler (Vicar) on May 04, 2011 at 13:41 UTC
    This is normal - each call to dbnextrow() in that mode fills in the same data buffer.

    Michael

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: perlquestion [id://897029]
Approved by ww
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others about the Monastery: (4)
As of 2024-03-29 07:40 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found