首页 > 代码库 > 游标 的概念及应用
游标 的概念及应用
游标:是通过SQL语句在内存里建立的一块“区域”,临时存储数据
可以通过游标来提取区域里的数据
分类:
1)隐式游标 默认select insert update delete语句都是用隐式游标
2)显示游标
隐式游标的属性:
%ROWCOUNT 代表DML成功执行的数据行数
%FOUND 布尔类型 TRUE代表insert update delete的一条语句执行成功
%NOTFOUND 布尔类型 功能与%FOUND相反
%ISOPEN 布尔类型 DML执行过程中 为TRUE 执行结束为FALSE
通过游标属性来使用隐式游标!!!
declare v_name varchar2(10); v_job varchar2(10); cursor emp_cursor --步骤1:声明游标 (名字) is select emp.ename,emp.job from emp where emp.empno=7788; (select 语句) begin --步骤2:打开游标 open emp_cursor; --步骤3:到游标中提取数据 fetch emp_cursor into v_name,v_job; --输出提取的值 dbms_output.put_line(v_name||‘,‘||v_job); --步骤4: close emp_cursor; end;
--使用for来循环提取游标里的数据 --使用循环提取游标时,会自动打开及关闭游标 declare cursor cursor_for is select * from emp; begin --打开游标 --open cursor_for; --循环提取 for emprow in cursor_for loop dbms_output.put_line(emprow.empno||‘,‘||emprow.ename); end loop; -- close cursor_for; end;
带参数的游标:
--带参数的游标 declare v_name varchar2(10); v_job varchar2(10); cursor emp_cursor(dno number) --步骤1:声明游标 is select emp.ename,emp.job from emp where emp.empno=dno; begin --步骤2:打开游标 open emp_cursor(7788); --步骤3:到游标中提取数据 fetch emp_cursor into v_name,v_job; --输出提取的值 dbms_output.put_line(v_name||‘,‘||v_job); --步骤4: close emp_cursor; end;
游标 的概念及应用
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。