One option might be to create an SQLite database (it's free and you don't need admin rights to install), and then for the GUI have an Access database that links to the SQLite db via an ODBC driver. I've had good luck with this at work.
Unfortunately I've never tried to programmatically create an Access database, so I can't help there.
Comment on Re: Programmatically building an MS-Access DB
Thanks for that idea. I'm using the node bmann suggested for this issue, but your suggestion has solved another issue I've been pondering for another project that I'm already using DBD::SQLite2 with.
Anima Legato .oO all things connect through the motion of the mind