2009/2/3 Paul Emsley <paul.ems...@bioch.ox.ac.uk>: > A user of my (guile-embedding) program has an Oracle database and asked me > if it was possible to interact with it (the database) in interesting ways > from my program (i.e. guile really). > > Is that possible or hopeless?
Possible, but will require coding. guile-dbi (http://home.gna.org/guile-dbi/) provides a simple, generic interface to SQL databases. Its designed to be 'generic' in that the same API (front end) can be used with different back-ends. Currently, there are two back-ends -- one for MySQL, and one for Postgres. A back-end for Oracle could be created, but this requires some C coding; but it shouldn't be too hard, as there are examples to work from. guile-dbi is simple -- which is both a blessing and a curse -- Pretty much all it does is forward SQL statements to the DB, and return rows as results. It does some minimal data translation e.g. so that float point columns are correctly returned as scheme floats (rows are returned as scheme association lists) -- but there's no special handling for dates, currencies. I can imagine that SQL power users will want to have all sorts of additional whiz-bang features, and these are not there. --linas