Just a quick note: It might be helpful to use croak() from the Carp module instead of die(). That way, OP would get a backtrace to where the error originated and what the function arguments were.
With die:
#!/usr/bin/env perl use v5.40; do_something(); sub do_something() { broken_function(10); broken_function(17); return true; } sub broken_function($val) { die("Bla") unless($val == 10); }
$ perl dietest.pl Bla at dietest.pl line 14.
With croak:
#!/usr/bin/env perl use v5.40; use Carp qw(croak); do_something(); sub do_something() { broken_function(10); broken_function(17); return true; } sub broken_function($val) { croak("Bla") unless($val == 10); }
$ perl dietest.pl Bla at dietest.pl line 16. main::broken_function(17) called at dietest.pl line 11 main::do_something() called at dietest.pl line 7
So, in your example, that would be:
... use Carp qw(croak); ... sub insertItem { (my $insertCom) = @_; $dbInsert=$db->prepare($insertCom) or die "DBI prepare failed! : $ +sth->err : $sth->errstr"; my $rows_inserted = $dbInsert->execute(); if ( $dbInsert->err ) { croak("DBI ERROR Insert Failed! : $sth->err : $sth->errstr"); } return $rows_inserted; }
In reply to Re^2: Can I get the actual error for DBI->execute() ?
by cavac
in thread Can I get the actual error for DBI->execute() ?
by SergioQ
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |