如果某个过程/函数严重失败,我需要照顾打开的游标吗? 假设我有:
PROCEDURE example IS
CURSOR c_example IS
SELECT 1 FROM dual;
BEGIN
OPEN c_example
some processing that causes a failure(...)
CLOSE c_example;
EXCEPTION
WHEN OTHERS THEN
IF c_example%ISOPEN
THEN CLOSE c_example;
END IF;
RAISE;
END;
/
这样的失败会不会以某种方式独自照顾我的打开游标? 我需要手动关闭它吗?