in reply to Databases with in databases

I was recently asked to look at something similar at work recently, to enable keeping a "database" of contacts which would be stored in a RDBMS (Oracle, in this case). It's certainly do-able, in more ways than one: serialisation (using Storable, YAML, or Data::Dumper, for example); non-relational databases (à la BerkeleyDB); a faked RDBMS (for example, DBD::CSV); or tightly controlled limited access to another real relational database. Anyway, here's a few things to consider.

If you wanted a full relational database, and really couldn't give even limited access to limited 'real' databases to your users, then I think you'd have to use a modified DBD::CSV, with the file-based interface (based on DBD::File replaced with one that fetched the source CSV from TEXT fields in your main database

HTH
ViceRaid