Still got the finish() habit? Let it go! I often see people posting snippets of example DBI code that call finish() after a fetch loop. You don't need to do that.
To quote the fine manual: "So you should _not_ normally need to call it explicitly _except_ when you know that you've not fetched all the data from a statement handle." http://search.cpan.org/~timb/DBI-1.611/DBI.pm#finish Tim.