if (open my $fh, "<", $filename) { chomp (my $line = <$fh>); "$line\t" =~ m/^(?:[A-Za-z]\w*\t)+\z/ or die "Bad header in $filename"; $dbh->do ("create table $tablename (". (join "," => map { "$_ varchar (20)" } split m/\t/ => $line).")"); }