in reply to SQL with DBI

Unless you have activated $dbv->{RaiseError} = 1; you should always check the return value of the DBI-methods to find out if anything went wrong and if so what error the DB-engine or DBI/DBD returned, by adding or die $drop_table->errstr; after the execute.

Also, you do not need the $drop_table->finish method and rather than using a C-style for loop a foreach is considered more Perlish.

CountZero

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