declare
cursor jobcursor is select id,name from testjob;
var_job jobcursor % rowtype;
begin
open jobcursor;
LOOP
fetch jobcursor into var_job;
dbms_output.put_line(var_job.id||var_job.name);
EXIT when jobcursor%notfound;
END LOOP ;
close jobcursor;
end;
/
游标的其它属性
游标名 % ISOPEN
判断游标是否处于打开状态 打开就返回TRUE 否则返回FALSE.
注意打开的游标不能再打开 关闭的游标不能再关闭。否则报错。
游标名 % ROWCOUNT 游标指针偏移量
智能循环 遍历游标
智能循环 会自动定义变量 自动打开游标 自动提取数据 自动关闭游标
declare
cursor jobcursor is select id,name from testjob;
begin
FOR var_job IN jobcursor LOOP
dbms_output.put_line(var_job.id||var_job.name);
END LOOP;
end;
/
带参游标
一个游标在定义时 可以设计参数,并且参数可以直接在游标对应的select语句中使用。
参数的类型 不能加长度修饰 但 可以使用%type。
打开游标时 传入对应的参数值。
declare
cursor jobcursor(var_id number) is select id,name from testjob where id>var_id;
var_job jobcursor % rowtype;
begin
open jobcursor(1);
LOOP
fetch jobcursor into var_job;
/* 如果没有提取到 新数据 则结束循环 */
EXIT WHEN jobcursor%NOTFOUND;
dbms_output.put_line(var_job.id||var_job.name);
END LOOP;
close jobcursor;
end;
/
改用智能循环
declare
cursor jobcursor(var_id number) is select id,name from testjob where id>var_id;
begin
for var_job in jobcursor(2) loop
dbms_output.put_line(var_job.id||var_job.name);
end loop;
close jobcursor;
end;
/
参考游标 ref cursor
概念
参考游标的意思是 游标对应的sql语句 可以在程序执行的过程中发生改变 直到打开游标时
确定对应的sql语句。
只要把sql 语句变成字符串
使用步骤
定义一个参考游标类型
type 参考游标类型名 is ref cursor;
使用这个类型 定义一个游标变量
游标变量 参考游标类型名;
打开游标时 关联一个动态拼接好的字符串
open 游标变量 for sqlstr;
declare
type jobcursor is ref cursor;
最后
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。
因此我收集整理了一份《2024年Android移动开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门
如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
oid开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门**
如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!