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"