Beefy Boxes and Bandwidth Generously Provided by pair Networks
more useful options

Re^4: last_insert_id() in sybase

by poj (Prior)
on Jul 12, 2014 at 08:44 UTC ( #1093356=note: print w/replies, xml ) Need Help??

in reply to Re^3: last_insert_id() in sybase
in thread last_insert_id() in sybase

From DBD::Sybase
The last_insert_id() call is simply a wrapper around a "select @@ident +ity" query. To be successful (i.e. to return the correct value) this +must be executed on the same connection as the INSERT that generated +the new IDENTITY value. Therefore the statement handle that was used +to perform the insert must have been closed/freed before last_insert_ +id() can be called. Otherwise last_insert_id() will be forced to open + a different connection to perform the query, and will return an inva +lid value (usually in this case it will return 0).
Try adding ->finish()
for (my $x=0;$x < 5;$x++){ $insertStatement->execute() or die($DBI::errstr); $insertStatement->finish(); my $id = $dbh->last_insert_id(undef,undef,undef,undef) or die "no insert id $DBI::errstr $!"; print "ID :",$id; update1($id); }

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1093356]
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others surveying the Monastery: (4)
As of 2017-11-18 20:20 GMT
Find Nodes?
    Voting Booth?
    In order to be able to say "I know Perl", you must have:

    Results (277 votes). Check out past polls.