PL/SQL 隐式游标

PL/SQL在执行DML语句时会自动打开一个隐式游标,虽然不能直接操作,但能通过其属性获取执行状态和影响的数据信息。本文介绍了这一特性,并引用了《Oracle PL/SQL 精萃》作为参考资料。
摘要由CSDN通过智能技术生成

-- Start

当我们执行一个增,查,删,改语句的时候,PL/SQL 会自动打开一个游标,我们不能对这个游标进行任何操作,但我们可以从游标的属性中得到一些有用的信息。

CREATE TABLE Student(
    Id      INT             NOT NULL,
    Name    VARCHAR2(30)    NOT NULL,
    Class   VARCHAR2(10)
);
INSERT INTO Student values (1, '张三', '116班');
INSERT INTO Student values (2, '李四', '117班');
INSERT INTO Student values (3, '王五', '118班');

BEGIN
DELETE FROM Student WHERE Name = '王五';

-- 检查游标是否是打开状态,对隐式游标来说它永远返回 FALSE
IF SQL%ISOPEN THEN
  DBMS_OUTPUT.PUT_LINE('你不可能看到这条消息.');
END IF;

-- 检查是否找到, SQL%NOTFOUND 检查是否没有找到
IF SQL%FOUND THEN
  DBMS_OUTPUT.PUT_LINE('删除成功.');
END IF;

-- 检查影响行数
DBMS_OUTPUT.PUT_LINE('删除了 ' || TO_CHAR(SQL%ROWCOUNT) || ' 行.');

--SQL%BULK_ROWCOUNT
--SQL%BULK_EXCEPTIONS
END;
/

--更多参见:Oracle PL/SQL 精萃

-- 声明:转载请注明出处

-- Last Edited on 2015-01-11

-- Created by ShangBo on 2015-01-11

-- End


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值