【发布时间】:2011-11-22 16:55:27
【问题描述】:
如果执行时间超过 10 秒,我需要中断 oracle 查询的执行,并给用户一条消息,通知他执行超时。 我google了很多,但我没有发现任何有用的东西。 有没有办法给 oci_execute 设置时间限制
【问题讨论】:
-
我需要在 PHP 端进行,因为我没有机会管理数据库配置。
如果执行时间超过 10 秒,我需要中断 oracle 查询的执行,并给用户一条消息,通知他执行超时。 我google了很多,但我没有发现任何有用的东西。 有没有办法给 oci_execute 设置时间限制
【问题讨论】:
也许 Oracle 配置文件对您的情况有用: http://www.adp-gmbh.ch/ora/concepts/profile.html
【讨论】:
可以使用配置文件,但有点苛刻。更好的解决方案是使用 Oracle 资源管理器。设置资源管理器计划,分配资源使用者组,决定如何将会话分配给资源使用者组,然后离开。 当估计的运行时间超过允许的运行时间时,您甚至可以让它拒绝启动查询。 还要检查http://ronr.blogspot.com/2009/06/howto-configure-resource-manager-using.html
【讨论】: