Delphi中的Firedac Visual Foxpro驱动程序6.0内存不足错误

Delphi中的Firedac Visual Foxpro驱动程序6.0内存不足错误,delphi,out-of-memory,driver,visual-foxpro,firedac,Delphi,Out Of Memory,Driver,Visual Foxpro,Firedac,使用delphixe8。 连接:具有下一个参数的TFD连接组件: DriverID=ODBC ODBCDriver=Microsoft FoxPro VFP Driver (*.dbf) ODBCAdvanced=SourceDB=%s;SourceType=DBF;Exclusive=No;BackgroundFetch=Yes;Collate=Machine;Null=Yes;Deleted=No 其中%s被替换为保存的路径 sql为“select*from utkf”的TFDQuery,

使用delphixe8。 连接:具有下一个参数的TFD连接组件:

DriverID=ODBC
ODBCDriver=Microsoft FoxPro VFP Driver (*.dbf)
ODBCAdvanced=SourceDB=%s;SourceType=DBF;Exclusive=No;BackgroundFetch=Yes;Collate=Machine;Null=Yes;Deleted=No
其中%s被替换为保存的路径

sql为“
select*from utkf
”的TFDQuery,其中utkf是utkf.dbf 此表(utkf)有400万条记录。 驱动程序不接受“select top”指令,因此我无法为FetchOptions.RecsMax属性赋值

如何打开页面或批量获取?
只能使用FireDac。

VFP自VFP6以来没有ODBC驱动程序。改用VFPOLEDB(OLEDB)驱动程序。如果您必须使用ODBC驱动程序,请尝试Advantage Database Server(ALS本地版本是免费的-如果您询问我在ALS方面的经验,这是不值得的。很久以前安装、测试和删除的,对于那些渴望本地ODBC访问VFP数据的人来说仍然是一个选项)

VFP ODBC驱动程序识别并接受“top”子句(但其行为可能与MS SQL server中的行为不同。它更像是带领带的top)。也许是您的SQL出错了?VFP“TOP”需要订购人

顺便说一句,您可以对任何版本的Foxpro表使用VFPOLEDB驱动程序