游标 的概念及应用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了游标 的概念及应用相关的知识,希望对你有一定的参考价值。

游标:是通过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;

 

以上是关于游标 的概念及应用的主要内容,如果未能解决你的问题,请参考以下文章

Docker的概念及安装配置

Intent的概念及应用

Intent的概念及应用

在 Android 中 Intent 的概念及应用

C 语言restrict 关键字的概念及使用例子

VLAN的概念及实验