TheScripts上的一个常见问题是“在那些需要查询的情况下(记录集,记录源,追加,删除,更新操作等),我应该使用存储查询还是SQL语句?” 在几乎所有情况下(几乎所有情况下),响应是您应该使用存储查询代替并行SQL语句。 以下简要说明将解释其背后的原因:
- 当您将查询存储为数据库对象时,Access会分析查询并存储优化版本。
- 运行存储的查询时,您正在运行的查询版本已按照项目1中的说明进行了优化。
- 如果您更改了查询,Access将在下次运行它时再次对其进行分析,并将再次存储新优化的版本。 这种优化将一直持续到,直到何时以及何时对查询进行另一次更改为止。
- 每次您运行SQL语句时,Access都会分析该语句并确定执行它的最佳方式。
- 对于SQL语句,此“最佳执行路径”没有在内部存储,而是在其存储查询副本中存储。
- 由于分析和优化需要时间,因此SQL语句的执行通常比等效的存储过程慢。
From: https://bytes.com/topic/access/insights/656528-stored-query-vs-sql-statement