DB abstraction layer: libdbi vs libgda

Phil Longstaff plongstaff at rogers.com
Fri Oct 27 11:31:37 EDT 2006


I'm starting to take a look at the data abstraction layer to be used.
The two candidates are libdbi and libgda.  Here's what I have found so
far:

SQLite: latest stable version is 3.3.8 (Oct 9/06)
MySQL: latest stable version is 5.0.24a
PostgreSQL: latest stable version is 8.1.5

DB abstraction layer maintained?
libgda: latest stable release 1.2.3 (Oct 31/05).  They are preparing a
2.0 release (1.99.0 on the ftp site is dated Oct 18/06, 1.99.1 AKA
2.0Beta3 is dated Oct 26/06).
Note that libgda *is* included in suse 10.0.  Hmmm, why is the version
1.3.91?

libdbi: latest release 0.8.1 (Nov 21/05).  Not much except spam on the
libdbi-devel mailing list for 2006.  Some bugs were reported in Oct 2006
and one of the people listed as an admin on the SourceForge project page
added a comment to the bug in Oct 2006.
Note that libdbi is *not* included in suse 10.0 i.e. the software
management tool doesn't find it.

Support for SQLite 3?
libgda: YES
libdbi: NO (2.8.x)

Support for MySQL 5.0.x?
libgda: YES
libdbi: ?

Support for PostgreSQL 8.x?
libgda: YES
libdbi: ?

For MySQL and PostgreSQL, I couldn't see what versions were supported by
libdbi.  The libgda web site (http://www.gnome-db.org/) does have a page
with version info.

Based on the maintenance and availability status, I think libgda is the
clear choice.  Since they are at beta3 already, the unstable branch
would be better.

Note that gda also supports XML databases, so that for an interchange
format, we *could* use it instead.  As another make-work project, gda
could be used as an interface around ofx (or other format) input/output
to provide a standardized API for data access.

Phil



More information about the gnucash-devel mailing list