in reply to Changing a subroutine to a module

If you use it more than once, it is a good candidate to put it in a module.

Of course you can seldom "translate" a subroutine directly into a module as --almost by definition-- a module should be useful in more than one place and therefore you might have to include some extra parameters to customize the routine and make it more general.

On a totally different tack: why do you want to put a space character in the variables if there is nothing passed to the subroutine? Doesn't it make the $sth->finish() if $sth; $dbh->disconnect() if $dbh; superfluous as now you will always succeed in these tests (space is considered TRUE!)?

Another question (just being curious): why do you exit the subroutine always with a zero value (exit 0). The reason cannot be that you want to check the return value of the subroutine as it is always zero? Hence the question, why zero?

CountZero

"If you have four groups working on a compiler, you'll get a 4-pass compiler." - Conway's Law