http://www.perlmonks.org?node_id=929670


in reply to DBI fails to return an error code

I am currently stumped.

Are you using RaiseError => 1 when you connect?

my $dbh = DBI->connection('DBI:mysql:db:localhost', 'user', 'pass', { RaiseError => 1 });

Replies are listed 'Best First'.
Re^2: DBI fails to return an error code
by djten (Novice) on Oct 09, 2011 at 01:34 UTC

    I had not tried that before, so I added that in. Then I created an error on purpose in one place in my code (an unknown column name).

    On my desktop machine, it threw the error to the Perl "software error" handling (bypassing my error display subroutine entirely), and reported:

    "DBD::mysql::st execute failed: Unknown column 'DCredits' in 'field list'".

    Exactly right!

    On my laptop, it still tried to run my error display subroutine, with the error code and string still blank (no difference there), and Perl's "software error" reported:

    "DBD::mysql::st fetchrow_array failed: fetch() without execute()".

    Which was not the actual problem, really, so no help there.