有没有办法让Oracle重新计算每个查询调用的查询计划?
发布时间:2021-04-01 16:41:52 所属栏目:站长百科 来源:网络整理
导读:我有一个参数化查询.根据参数值,最佳查询计划会有很大差异.这就是麻烦:Oracle使用第一次查询调用的计划进行后续调用,导致性能下降.我通过动态SQL来处理它,但这种方式远非优雅.所以问题是:有没有办法告诉Oracle必须重新计算查询计划? 解决方法 对于Oracle
我有一个参数化查询.根据参数值,最佳查询计划会有很大差异.这就是麻烦:Oracle使用第一次查询调用的计划进行后续调用,导致性能下降.我通过动态SQL来处理它,但这种方式远非优雅.所以问题是:有没有办法告诉Oracle必须重新计算查询计划? 解决方法对于Oracle 10g,我们将在查询中选择任何表并执行GRANT SELECT ON table1 TO user1; 这将使引用此表的任何查询的计划无效.当然,您可能希望选择对其他查询影响最小的表.有关更多信息和示例列表,另请参见this page. (编辑:ASP站长) 【免责声明】本站内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。 |
相关内容
未处理完善
-
无相关信息
最新更新