in reply to Is Perl the right solution...

In my eyes, the best language for you to write this app is the one you know best. VB is rather good with ODBC-Databases, as well as perl.
I've found out that compiling a perl script doesn't make that script faster. So I hardly ever compile a script (I think it's not worth the time spending on compiling). For some Applications like an IT-accounting system for a big newspaper in Germany, I used Perl with Win32::ODBC and CGI/HTML as a user interface, and it still works fine. I could do this, because the people working with this system are all experianced user. For just an average user, I'd rather use a classic GUI like Win32::GUI (or maybe Tk).
Some years ago, I played around a little bit with VB; but I came back to perl, because Development is rather fast (and I do love the way of perl).
If you've got performance problems, you could perhaps locate them with the module Devel::DProf to find out which Subs or Methods use which ammount of time, and then perhaps rewrite them using a "better" algorithm or even write them in C (e.g. Inline::C).
Imho Access is a great DB for learning database programming, and MsSql is still rather good, due to the whole administration frontends. But Access can only keep a rather little ammount of data, the MsSql-Server is a rather performing DBMS (MS bought it from Sybase). If you know a little bit about databases, MySql might be rather interesting for you.

Best regards,
perl -e "print a|r,p|d=>b|p=>chr 3**2 .7=>t and t"