[Mono-list] Data Provider for "non managed" data sources

Jonathan Stowe jns@gellyfish.com
Thu, 13 May 2004 17:55:26 +0100

In a fit of hubris and nostalgia I started hacking on a data provider
for xBase files which is a day or so away from being able to provide an
IDataReader to retrieve all the rows in the database table.

The problem of course is that the xBase files must be accessed
individually and directly and consequently there is no notion of a
database as one has with a real RDBMS which means a SQL statement with a
table name is rather meaningless for one thing.

Anyway it occurs to me that the best thing to do would be to treat a
collection of xBase (or indeed CSV, XML or Berkely DB ) files as a
"database" with each file representing a table named as the filename
much like the Perl modules DBD::XBase or DBD::CSV do (see
http://search.cpan.org/~janpaz/DBD-XBase-0.241/lib/DBD/XBase.pm for
example) - essentially the Data Provider is acting as an RDBMS for the
otherwise non-managed data files.

Ideally (and this is the real purpose of this message) one would have a
generic framework to support all this. I see it roughly as having a
management layer that provides the services (SQL parsing and so forth)
to the IDataClient in place of a real database engine and that then in
turn calling on table provider classes for the appropriate file formats
to do the data access work.  Does this sound like a reasonable model or
does anyone have any suggestions about how it might better be
implemented?  Is anyone working on anything that might support or be
supported by something like this?  Is there infact any any interest in
something like this.

Don't be holding your breath for any serious code on this for the moment
however - I'm a little busy right now.