This is a bug.
This occur on any command that call the C++ VFP _DBSeek routine.
SEEK
KEYMATCH
SELECT ... Indexkey=valueNull
but not on the JOIN ... ON clause because VFP trap the NULL value before call the _DBSeek routine.
I Think this occurs because
if the index key not support NULL,
VFP build a INDEX without the null tag byte.
Then VFP check if the search value is null,
and fire a Error, but this is a poor logic because
IF VFP C++ CODE CATCH THIS ERROR,
THEN IT CAN CATCH THIS LIKE A SEEK UNKNOW AND RETURN THE SQL92 CORRECT VALUE .NULL.without change the index structure!
I hope VFP9 fixed it.
Fabio