dbfpy - cannot store new record

John Machin sjmachin at lexicon.net
Fri May 22 01:35:17 CEST 2009


On May 22, 1:53 am, Laszlo Nagy <gand... at shopzeus.com> wrote:
> Here is the next problem. For boolean/logical fields, I can set their
> value to True/False easily. However, setting NULL seems impossible:
>
> rec = tbl.newRecord()
> rec["SOMEFIELD1"] = True # Works fine
> rec["SOMEFIELD2"] = False # Works fine
> rec["SOMEFIELD3"] = None # Will store False
> rec["SOMEFIELD3"] = 0 # Will store False
> rec["SOMEFIELD3"] = "" # Will store False
> rec["SOMEFIELD3"] = chr(32) # Will store False
> rec["SOMEFIELD3"] = chr(0) # Will store False
> rec.store()
>
> Strange thing: if I do not set the value of a numeric field, it becomes
> NULL. The same thing I cannot do for logical fields: if I do not set the
> value of a logical field, it becomes an invalid value, denoted with a
> question mark.

That's not "invalid", it *is* "NULL" according to DBF convention.




More information about the Python-list mailing list