如何kill掉一个正在运行的存储过程?
步骤如下:
1,使用以下sql语句查询出被锁的数据对象。
复制代码 代码示例:
SELECT * FROM v$access t WHERE t.OBJECT LIKE 'TEST_PROC%' ; --对象名为大写字母
2,找到上面查询结果中的SID字段信息,并把其当做查询条件到v$session视图中查询。
复制代码 代码示例:
SELECT * FROM v$session t WHERE t.SID = :V_SID ; --:V_SID根据上面查询结果获得
3,在上面查询结果中找到SERIAL#字段,并根据SID和SERIAL#字段杀掉一个锁死的会话。
复制代码 代码示例:
ALTER SYSTEM KILL SESSION ':V_SID,:V_SERIAL#' ; --:V_SERIAL#根据上面查询结果获得