如果有 的在end loop 添加 EXIT WHEN 游标名%NOTFOUND (意思是如果没有这个游标,就跳出)
2、没有loop 的话
手动停止掉当前的存储过程吧。语句如下:
--先查运行的存储过程sid
select /*rule*/ sid from v$access where object='存储过程名'
--通过sid 找到serial
select sid ,serial#,paddr from v$session where sid='上一句查到的sid'
--kill 掉存储过程
alter system kill session 'sid','serial#'
亲,为您查询到的答案是:ora-03127是一种常见的Oracle错误,表示数据库中的一个或多个表卡死了。表卡死是指表的某些部分(如索引)被锁定,以至于无法对其进行任何 *** 作。这种情况通常发生在多个用户同时访问同一个表时,由于某些原因,其中一个用户的 *** 作被锁定,从而导致其他用户无法访问该表。要解决这个问题,您可以尝试重新启动数据库,或者使用PL/SQL语句来查询表卡死,以确定哪些表被锁定,然后查看哪些用户正在使用这些表,并尝试终止这些用户的 *** 作。您也可以使用Oracle的alter system kill session命令来强制终止指定用户的 *** 作,以释放表卡死。
1、查看一下Oracle数据库中的正在运行的进程是否正在运行该程序,如果有的话把进程停止2、全部关闭重开或者换一个PLSQL试一下,看看是不是PLSQL本身导致的问题
3、如果都不好用先尝试重启一下PLSQL所在的服务器(如果可以重启的话)
先试试上述方法
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)