Beefy Boxes and Bandwidth Generously Provided by pair Networks
There's more than one way to do things
 
PerlMonks  

Re: Forgetfulness and 6-months-from-now-you

by hippo (Abbot)
on Jan 12, 2018 at 11:29 UTC ( #1207150=note: print w/replies, xml ) Need Help??


in reply to Forgetfulness and 6-months-from-now-you

Now don't take this the wrong way, but did you know that you can set RaiseError and PrintError when you initiate the connection? That way you don't need to check for (and die on) errors every time because DBI will do it for you. It might just save you a lot of typing.

  • Comment on Re: Forgetfulness and 6-months-from-now-you

Replies are listed 'Best First'.
Re^2: Forgetfulness and 6-months-from-now-you
by oakbox (Chaplain) on Jan 15, 2018 at 11:04 UTC

    I don't take it the wrong way :)

    Most of my work is generating content for an API, which wants specifically formatted error handling (which I conveniently left out of my post). I want to die in a clean, and parse-able, way so that the programmer on the other end can either a) figure out what they did wrong or b) communicate with me effectively about what happened. I also use a lot of Mark Overmeer's excellent Log::Report module to make sane logs for internal analysis.

    I COULD override die, I guess, and generate something that way. But my laziness doesn't extend that far.

      I COULD override die, I guess, and generate something that way. But my laziness doesn't extend that far.

      I would probably be that lazy:

      my $dbh=DBI->connect(..., {RaiseError => 1}); # later: if (eval { # use $dbh # perhaps the entire API handling 1; }) { # report success to the API } else { my $error=$@; # Post-Process $error if needed # report $error to the API }

      Alexander

      --
      Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so". ;-)

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others chilling in the Monastery: (2)
As of 2018-01-21 11:13 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    How did you see in the new year?










    Results (227 votes). Check out past polls.

    Notices?