Not sure what is the problem but couple of hints/ideas:
DBI returns undef if database cell contains NULL. May be there is a problem in your database.
There is one problem with your query. You use astersk in it but in most cases it is bad idea. Check this node and this node for explanation why.
One wierd thing. For me (perl 5.6.1) Data::Dumper prints undef when it encounters undefined value in data structure. In your output I see just ''. What does it mean? Well,.. I don't know :(