RESULT_CACHE关键字是否会从Oracle中的函数返回更新的数据?
我正在调用视图的select查询中的函数。View正在从包含约100万条记录的表中读取记录。RESULT_CACHE关键字是否会从Oracle中的函数返回更新的数据?,oracle,function,Oracle,Function,我正在调用视图的select查询中的函数。View正在从包含约100万条记录的表中读取记录。 当我在函数中写入RESULT_CACHE关键字时,我会在几秒钟内得到输出。我怀疑当任何一个列的值都被改变了,内部函数会考虑这个新的值吗? < P>是的,我想它会刷新你的数据。 但在更新数据后,第一次执行需要时间。根据我的知识结果,\u缓存将从oracle专用内存结果缓存向您提供数据 如果您想获得更新的结果,可以使用, 结果缓存依赖于(表名) 但是,如果您的DB版本是11.2或更高版本,那么就不需要REL
当我在函数中写入RESULT_CACHE关键字时,我会在几秒钟内得到输出。我怀疑当任何一个列的值都被改变了,内部函数会考虑这个新的值吗? < P>是的,我想它会刷新你的数据。
但在更新数据后,第一次执行需要时间。根据我的知识结果,\u缓存将从oracle专用内存结果缓存向您提供数据 如果您想获得更新的结果,可以使用, 结果缓存依赖于(表名) 但是,如果您的DB版本是11.2或更高版本,那么就不需要RELATES ON子句,因为它会自动跟踪依赖项,并在必要时使缓存结果无效
您可以参考或详细信息您可以共享代码快照吗?请提供代码示例。因此,我们可以帮助您。在某些情况下,不管结果缓存设置如何,函数结果都将缓存在单个SQL语句的执行范围内,这取决于它是否具有确定性以及输入参数的更改。您确定需要结果缓存吗?另外,您是否阅读了您的版本的文档,以了解文档中的行为是什么?在oracle 11.2中,Reliands-on子句被弃用。实际上,oracle 11.2+@Jeffrey中忽略了Reliands-on,请提供链接以更好地理解。“依赖于”子句不起任何作用