I've been having trouble getting the proper value of $handle->errstr
or $DBI::errstr. For some reason, it's always giving the scalar 7 back
rather than an informative error message. Here's an script and output:
--- foo.pl ---
#!/usr/bin/perl
use DBI;
my $dbh = DBI->connect("dbi:Pg:dbname=template1", "xach", undef);
my $sql = "bogus sql goes here";
my $sth = $dbh->prepare($sql);
$sth->execute() or die $sth->errstr;
my ($result) = $sth->fetchrow_array();
$sth->finish;
print $result, "\n";
$dbh->disconnect();
--- end ---
When run, it prints out this:
$ perl foo.pl DBD::Pg::st execute failed: at foo.pl line 8. 7 at foo.pl line 8. Database handle destroyed
withoutexplicit disconnect.
Now, I'm not surprised at the "database handle destroyed..." part, but
I can't figure out why i'm getting "7 at foo.pl" and a blank message
in the execute failed string. Any ideas?
Zach
--
xach@xach.com Zachary Beane http://www.xach.com/