【发布时间】:2011-06-21 05:37:25
【问题描述】:
我有一个报表引擎,在 Oracle 11 上执行 PreparedStatements,这是一项高度优先的任务。
我看到的是,第一次查询调用的执行时间通常比之后的相同查询长得多(查询有不同的参数并返回不同的数据)。
我想这是由于 Oracle 在第一次查询调用时完成的硬解析。
我想知道,有没有办法向 Oracle 提示,这个查询是高优先级的查询,会经常执行,并且性能很关键,所以无论如何它都应该保留在共享池中?
我知道我可以修复 Oracle 11 中的执行计划,但我不想修复它,我希望 Oracle 仍然能够更改它,随着系统的变化,我想要的只是排除查询硬解析。
【问题讨论】:
标签: performance oracle sql-execution-plan