龙空技术网

PL/SQL之显示游标读取的几种方式

Oracle随行 142

前言:

现在朋友们对“oracle游标是否打开”都比较重视,兄弟们都想要学习一些“oracle游标是否打开”的相关内容。那么小编在网络上收集了一些有关“oracle游标是否打开””的相关资讯,希望我们能喜欢,小伙伴们一起来学习一下吧!

隐式游标:是用户在PL/SQL中操作SQL时自动生成的,有两种,单行隐式游标 和多行隐式游标

显示游标:是在声明块中直接定义的游标,保存SELECT查询后的返回结果。

一、为游标每列定义变量,fetch读取,【变量展现】数据

DECLARE

CURSOR emp_cur is

select empno,ename,sal from emp;

v_empno emp.empno%TYPE;

v_ename emp.ename%TYPE;

v_sal emp.sal%TYPE;

BEGIN

OPEN emp_cur;

LOOP

fetch emp_cur into v_empno,v_ename,v_sal;

exit when emp_cur%NOTFOUND;

dbms_output.put_line(v_empno ||v_ename||v_sal);

END LOOP;

CLOSE emp_cur;

END;

二、基于游标记录类型声明,fetch读取,【记录.列名】展现数据

DECLARE

CURSOR emp_cur is

select empno,ename,sal from emp;

l_emp emp_cur%ROWTYPE;

BEGIN

IF emp_cur%ISOPEN THEN

NULL;

ELSE

OPEN emp_cur;

LOOP

fetch emp_cur into l_emp;

exit when emp_cur%NOTFOUND;

dbms_output.put_line(emp_cur%ROWCOUNT

||', '||l_emp.empno

||', '||l_emp.ename

||', '||l_emp.sal);

END LOOP;

CLOSE emp_cur;

END IF;

END;

三、for循环直接读取显示游标(最简便)【下标.列名】展现数据

DECLARE

CURSOR emp_cur is

select empno,ename,sal from emp;

BEGIN

FOR indx IN emp_cur LOOP

dbms_output.put_line(indx.empno ||indx.ename||indx.sal);

END LOOP;

END;

标签: #oracle游标是否打开