当直接从数据库页访问信息更有效时,作为索引扫描的替代方法 UltraLite 使用直接页扫描。只有当优化程序确认了以下内容时才使用直接页扫描:
预先存在的索引不能更有效地返回结果。
未使用查询执行更新。例如,已经将语句声明为 FOR READ ONLY(未指定 FOR 语句时的缺省设置),或者查询以数据明显无法更新的形式编写。
因为 UltraLite 直接从存储行的页面读取行,所以查询结果无顺序的返回。后继查询结果的顺序是不可预知的。如果需要行的顺序为可预知的且确定的,请使用 ORDER BY 子句在一致顺序中获取结果。反之,如果顺序并不重要,可以省略 ORDER BY 子句以提高查询性能。
如果使用 Table API 编写应用程序,则无法使用直接页扫描。
可以查看 UltraLite 何时直接扫描页或使用哪个索引返回结果。请参见确定优化程序使用的访问方法。
![]() |
使用DocCommentXchange 讨论此页。
|
版权 © 2010, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.0 |