I use perl to do access various databases through an odbc connection.
There is a module called win32::odbc that is used for this. It seems
as though you could write a clip that would access a database, request
a list of tables, and then format the results into a clip. The
resultant clip library of tables could then be used to get lists of the
fields of the tables, like you suggest you want to.
I think the process would have to be based on some type of iterative,
interactive process such as this, where the results of one query are
put into a format from which another query could be based on.
The part that would be interesting would be that the requests would
either have to be specific to a database program to utilize the
powerful utilities and commands that are unique to each package or
based on SQL-92, in which case some functionality would be lost.
Just my 2 cents,