support creating temporary tables from queries

also override drop_table in AbstractMySQLAdapter to properly drop
temporary tables without committing the transaction