Don't use
$dbh to name the objects, or
do as the method name. $dbh is the standard idiom for DBI database handles. If you call your objects $dbh even in sample code, then people will get confused and think they are real database handles. And
do is a method on database handles.
$dbh->do implies the standard do method.
Use another, more descriptive name. If you can find a better name, maybe that is a good sign the interface needs some work.