SQL backend for GnuCash 2

Jim C. Nasby decibel at decibel.org
Fri Oct 27 00:53:58 EDT 2006


On Thu, Oct 26, 2006 at 05:49:36PM +0300, Ivars Grinbergs wrote:
> Derek Atkins wrote:
> > "Daniel Espinosa" <esodan at gmail.com> writes:
> >
> >   
> >>> 1) We don't need an AccountType table.  AccountTypes are not data,
> >>>    they are encoded in the application.  There's no reason to add
> >>>    them to the database because they are constants.
> >>>
> >>>       
> >> If usefull if you want a strong data integrity done by the Database
> >> server, and if you want to share with others programs (I plan to
> >> develop some one for the desktop)
> >>     
> >
> > You can't get enough data integrity from the database.  For example,
> > you cannot define the database in a way to enforce balanced transactions.
> >
> >   
> Theoretically, it is possible by means of triggers and stored 
> procedures. But I'm not sure that many DB engines support them and if 
> support, then in different ways and at different degree. Therefore I 
> don't think it is worth to bring existing logic (that checks and 
> enforces certain integrity) from application tier (single point) to DB 
> backend tier (potentially many different  implementations  for different 
> backends).

You'd be better off creating a stored-procedure-based interface and
having it enforce the semantics.
-- 
Jim C. Nasby, Database Architect                decibel at decibel.org 
Give your computer some brain candy! www.distributed.net Team #1828

Windows: "Where do you want to go today?"
Linux: "Where do you want to go tomorrow?"
FreeBSD: "Are you guys coming, or what?"


More information about the gnucash-devel mailing list