`
panmingzhi0815
  • 浏览: 12791 次
  • 性别: Icon_minigender_2
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

oracle游标的何用

阅读更多

当我们要对查询出来的结果集进行逐行修改时就得用到游标;

1.首先建一个表CLASS_INFO

CREATE TABLE CLASS_INFO(
CLASS_ID NUMBER(15,0),
CLASS_NAME VARCHAR2(20),
CONSTRAINT PK_CLASS PRIMARY KEY(CLASS_ID),
CONSTRAINT UQ_CLASS_NAME UNIQUE(CLASS_NAME)
);

INSER INTO CLASS_INFO VALUES(1,'网络工程');
INSER INTO CLASS_INFO VALUES(1,'软件开发');
INSER INTO CLASS_INFO VALUES(1,'数据库应用');

 

2.开始使用游标:

DECLARE
mycur CURSOR IS
SELECT * FROM CLASS_INFO;//声明一个游标,作用于IS后面的语句
myrecord class_info%rowtype;//声明一个行类型的数据
BEGIN
   OPEN mycur;//打开游标
   FETCH mycur INTO myrecord;//游标向下开始执行
   WHILE mycur%found LOOP//如果游标中有值,则开始循环
      DBMS_OUTPUT.PUT_LINE(myrecord.INFO_NAME);//打印出当前游标行的某个数据
      FETCH mycur INTO myrecord;//游标继续向下移
   END LOOP;
   CLOSE mycur;//关闭游标
END;

 3.执行上面语句后会打印出以下的信息:

网络工程
软件开发
数据库应用

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics