隐式游标

最近更新时间: 2025-02-18 16:02:00

由数据库系统隐含创建游标是隐式游标

隐示游标支持以下属性

属性 SELECT INSERT UPDATE DELETE
SQL%ISOPEN FALSE FALSE FALSE FALSE
SQL%FOUND TRUE 有结果 成功 成功 失败
SQL%FOUND FALSE 无结果 失败 失败 失败
SQL%NOTFOUND TRUE 无结果 失败 失败 失败
SQL%NOTFOUND FALSE 有结果 成功 成功 成功
SQL%ROWCOUNT 返回行数 插入行数 修改行数 删除行数

示例:隐式游标属性

  • 复制
    复制成功
DECLARE
V_deptno departments.department_id%TYPE :=1;
BEGIN
DELETE FROM departments WHERE department_id=v_deptno;
IF SQL%NOTFOUND THEN
DBMS_OUTPUT.PUT_LINE('没有发现 department_i='||v_deptno);
insert into departments values('a'||v_deptno, v_deptno*10, v_deptno);
DBMS_OUTPUT.PUT_LINE('插入数据行数='||SQL%ROWCOUNT);
elsif SQL%FOUND then
DBMS_OUTPUT.PUT_LINE('删除数据行数='||SQL%ROWCOUNT);
END IF;

if SQL%ISOPEN then
DBMS_OUTPUT.PUT_LINE('ISOPEN 为TRUE!!!有问题');
end if;
END;
/