Help with libdbi code

Colin Law clanlaw at gmail.com
Sat May 7 11:23:56 EDT 2016


On 7 May 2016 at 15:56, John Ralls <jralls at ceridwen.us> wrote:
> ..
> Try changing gnc-backend-dbi.c line 2702 from
>     type_name = "TIMESTAMP NULL DEFAULT 0";
> to
>     type_name = "TIMESTAMP NULL DEFAULT NULL";
>

I don't think it is necessary to specify DEFAULT NULL as that is the default.

Well That does prevent the error and nothing else undesirable seems to
be happening.  Can we be sure, though, that nowhere does the code
explicitly write 0 (as opposed to not asking for anything to be
written,  so the default is written)?

I could not find anything in the libdbi docs that explicitly says what
happens when a field containing NULL is fetched.  I presume it is
going to return 0 however, so that should be OK.

The other area I can think of where this could cause problems is if
anywhere in the code issues a query specifying date <> 0 or > 0 or = 0
or other similar operation.  These would have to be changed to IS NOT
NULL etc.

Regards

Colin


More information about the gnucash-devel mailing list