I spent a few hours tonight hacking a Visual FoxPro provider that uses the FoxPro 9 OleDB Provider. I have something working pretty good. I am able to generate my code, etc. One problem I have is that the engine builds the SQL with parameter names (example: lastname <> @lastname0) and FoxPro doesn't like to have a name there. I convert @ to ? to make FP happy, but the lastname<>?lastname0 blows up. I'm not sure where this is happening. I'm still investigating but I hope I can change this behavior in the new VFPDataProvider class I created.
There are some things lacking in VFP though and I'm not sure how well this is going to work. For example, I don't see a way to get the primary key column from a table so I have a hacked work around for that. I don't think VFP supports foreign keys so I don't have any code to generate those. I don't know how well it will work with INSERTs since I don't know how to support the SCOPE_IDENTITY() call after the insert like you would normall do in Sql Server. Lots of little things going to make it difficult to support this old database format.
I'll be happy to share my code with anyone who is interested and can add some value to it.
Any help or suggestions would be really appreciated.