in reply to Re^5: Global symbol "$prepare" requires explicit package name
in thread Global symbol "$prepare" requires explicit package name

The problem was that the statement handle was not finished. Solution is to add $sth_test->finish(); before disconnecting the database (src).<\p>

However, I never used this command before and never encountered this error. Should I use it always before disconnecting the database?

Replies are listed 'Best First'.
Re^7: Global symbol "$prepare" requires explicit package name
by hippo (Archbishop) on Sep 19, 2019 at 15:17 UTC

    The documentation for DBI is really good. I do recommend that you read it. In this case the documentation for the finish method goes into some detail about when you should call it and when you should not and the advantages and disadvantages of both.

    Also, what you have encountered on disconnection is not an error. It is a warning. You might think these 2 terms mean the same thing but they do not. See Re: Warnings vs. Errors. Warnings are good because they alert you to situations (such as disconnecting while there are active statement handles) which could be indicative of other problems.