Jet 数据库引擎能够从任意大小的数据库中检索数据。但是随着要处理的记录的个数的增加,必须意识到所需 TEMP 存储空间也相应增加。所有直接打开表的设计,由于不具有 SQL 查询限制范围的优点,都必须重新设计。当 Jet 建造键集时,如果本地磁盘空间被耗尽,Jet 就会产生一个可捕获的错误。这实际上并不是 Jet 的限制,而是系统资源的限制,并且这是应用程序设计低劣的特征。对于需要数据库引擎创建指向每一行结果集数据物理指针的应用程序,就象创建键集一样,有一个由存储键集的介质容量所决定的理论上的上限。
在有些游标模式下,键集中仅有一个子集保持在客户机上,或者键集建造在服务器上。尽管 Jet 记录集支持在不影响客户资源的条件下浏览表类型的记录集,然而当访问远程 (ODBC) 数据时,就不再支持这种记录集。相反,这种情况下只支持动态集类型和快照类型的 Recordset 对象。
以上两种记录集均在客户系统上建造键集,必要时可以溢出到磁盘上的 TEMP 空间。快照类型的数据还下载数据,这可以进一步限制可以建造的记录集的大小。不管在何种情况下,数据访问策略中都应该包含对结果集范围的限制。这就是说,应该限制查询返回行的数目。
详细信息 请参阅本章的“选取与 Jet 一起使用的 DAO 查询处理器”和《数据访问对象指南》