Gnucash 2.3.0 - Database schema and third party tools

Derek Atkins warlord at MIT.EDU
Tue Jun 30 09:53:22 EDT 2009

Phil Longstaff <plongstaff at> writes:

>> Thanks. :)
>> I'll start working on my implementation in the next days then.
>> The accounts-Table has a field "non_std_scu".
>> I guess a std-scu would be the one of the associated currency
>> but does it not violate the first normal form to save this
>> in an extra field?
> It might.  I'm not a database expert.  I simply duplicated the XML backend 
> functionality into an SQL database.

Keep in mind that GnuCash is not a Database Application.  It just uses
the Database as a Data Store.  It's a subtle distinction that appears to
be lost on most people.  What this means is that GnuCash does not use
the database as anything more than a place to store data.  It doesn't
use database invariants to make sure the data is correct.  It doesn't
use stored procedures to operate on the data.  But what it gives us is
the ability to save data in real time, and theoretically faster queries
over the data.

> Phil


       Derek Atkins, SB '93 MIT EE, SM '95 MIT Media Laboratory
       Member, MIT Student Information Processing Board  (SIPB)
       URL:    PP-ASEL-IA     N1NWH
       warlord at MIT.EDU                        PGP key available

More information about the gnucash-devel mailing list