Nun ist es so, dass ein create table-Statement oder ein drop table-Statement zwar ausgeführt wird, aber DBI einen $DBI::errstr wirft, siehe Betreff. Was bedeutet dieser $DBI::errstr?
Vermutlich weil ein selectall_arrayref nicht nur ein execute ausführt, sondern auch versucht die Daten zu lesen, die es aber bei einem DROP oder CREATE TABLE nicht gibt.
Struppi.