DBI will automatically close open connections at the end of a program, but will complain to let you know you forgot. This happens even with Ctrl-C, as the closing is handled by the connection's DESTROY method, which is invoked by Perl's garbage collection when the program terminates.
A major problem with depending on the automatic close is the variance in handling of open transactions. Some DBD's will commit, while others rollback.
Check out chapter 4 of Programming the Perl DBI (the ORA Cheetah book).