In der Dokumentation steht doch wie die execute benutzt werden soll.
Quote
An undef is returned if an error occurs. A successful execute always returns true regardless of the number of rows affected, even if it's zero (see below).
It is always important to check the return status of execute (and most other DBI methods) for errors if you're not using "RaiseError".