有什么方法可以保证应用程序不会在Oracle中释放行锁吗?如果我确保将commit语句放在finally块中,则可以处理意外错误的情况,但是如果应用程序进程在提交前突然中断(或者有人将电源线/局域网电缆拔出),该怎么办.
有没有办法让Oracle在X时间后自动回滚空闲会话?还是在我以某种方式检测到连接丢失时回滚?
根据我所做的实验,如果我在提交某个应用程序进程之前终止了该进程,则行锁将永久保留,直到我登录数据库并手动终止该会话为止.
谢谢.
解决方法:
尝试在sqlnet.ora中设置sqlNET.EXPIRE_TIME.
sqlNET.EXPIRE_TIME=10
Purpose
To specify a time interval, in minutes, to send a check to verify that client/server connections are active.