in reply to Re^2: Having problem with handling DBI error in object
in thread Having problem with handling DBI error in object

> If any error happens then I don't want to die the program.

With RaiseError=0, and PrintError=1, that is just what will happen - the error message will be printed but the program will not die.

If you run $obj->method1() and store its error message in $obj->{ERROR_MSG} and then run $obj->method2() which also stores its errors in that same place, yes you will overwrite the previous error. If you have that situation, you may need to store the errors in a hash with e.g. a timestamp as the key to the various errors. You might want to look at some of the modules used for DBI logging and tracing.

  • Comment on Re^3: Having problem with handling DBI error in object

Replies are listed 'Best First'.
Re^4: Having problem with handling DBI error in object
by perlCrazy (Monk) on Jul 19, 2007 at 21:50 UTC
    Thanks.
    some limitations are here : I am passing the $dbh as handle to this module. so basically DBI::Connect method is getting called from some other place. like this:
    my $obj = module->new($dbh); $obj->getDDL(); $obj->method2();
    Any other problem did you see in getDDL method, sicne I am storing the value from $DBI::error str.