This may not apply to you, but this is what happened to me last week.
I needed to make a change in the control source of a pick list. I copied all the current data to my test data folder and made that my database of record. I changed one field name to avoid future problems with a VFP reserved word [foreign -to- lforeign]. The view using this table was also changed so the view would not be broken. I modified the form with the pick list, recompiled the app and ran it against the test db [or so I thought]. I got the same error you did.
After a migrane headache, I finally opened the DE of the form and remembered that VFP hard-codes the *&!$% path to the DB with the table or view. The path to the working DB was still being used. Once I stripped the path [hacked the SCX] from all the cursors in all form DEs and recompiled, the correct versions of my table and view structures from my test DB were now being used.
Mark McCasland
Midlothian, TX USA