in reply to Attempting to trap a DBI->connect error

Your eval "block" needs a semicolon after it.

$ perl -ce 'eval { 1 } sleep 1;' syntax error at -e line 1, near "} sleep" -e had compilation errors. $ perl -ce 'eval { 1 }; sleep 1;' -e syntax OK