
IRowsetIndex Support in Visual FoxPro OleDB driver
Hello,
FoxPro 7 will include a new OleDB driver for FoxPro tables. Will this
driver support IRowsetIndex (hence Recordset.Seek) for CDF-indexed DBF
tables? The Beta 1 driver seems NOT to support this interface.
I would like to find the last index value before a given value in a
large CDF-indexed DBF table.
I currently use DAO 3.5 to access the tables. By opening the tables
directly (not through Access linked tables), the DAO Recordsets
support Seek (and the performance is nearly as good as Clipper!). It
seems DAO 3.6 does not support CDF-indexed DBF tables except through
ODBC. (This is related to the loss of FoxPro support in Jet 4.0.)
I would like to use ADO to access the data. The OleDB driver for ODBC
does not support IRowsetIndex, hence Recordset.Seek. No OleDB Driver
for Jet supports the FoxPro IISAM for access to CDF-indexed DBF tables
as well as the Seek functionality. The ODBC driver for Visual FoxPro
does not optimise my query (find last record in index before a given
value) to use the index in the best possible way. Thus the performance
is rather terrible using ODBC for this access pattern.
The ClearStream OleDB Driver supports IRowsetIndex (i.e. Seek) but is
expensive. I would prefer to use a freely redistibutable, Microsoft
supported driver.
Will the new Visual FoxPro OleDB driver support IRowsetIndex, hence
Seek? When will it be available? Will it be available separate from
the Visual FoxPro product? Are there any other suggestions for ADO
access to my data?
Govert