欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Oracle-cursor动态游标

程序员文章站 2024-02-10 14:22:04
...

动态游标

语法

type 动态游标类型名 is ref cursor;  ---- 声明一个动态游标类型,紫色填写一样内容

游标名 动态游标类型; ---- 声明一个动态游标类型的变量,这个变量就是动态游标类型的,也就是动态游标

open 游标名 for SQL语句; ---- 打开游标,并且把SQL语句和游标关联起来

close 游标名;

遍历tablesp表

--创建过程

create or replace procedure proc_select

is

sql_select varchar(400);

sql_row tablesp%rowtype;

type cur_select is ref cursor; --声明一个动态游标类型,名字叫cur_select,因为游标不是类型所以要声明一个动态游标类型

curs cur_select;  --声明一个动态游标变量,名字叫curs

begin

  sql_select:='select * from tablesp'; -- 需要执行的SQL语句

  open curs for sql_select;    -- 打开游标,并且SQL执行结果存放到curs中

  loop

    fetch curs into sql_row;  -- 把curs中的一条记录赋值为 sql_row

    dbms_output.put_line(sql_row.tid||'-'||sql_row.tname||'-'||sql_row.tage);

    exit when curs%notfound;  -- 退出循环

  end loop;

  close curs;

end;