declare
type DeptRecord is record
(deptno dept.deptno%type,
dname dept.dname%type,
loc dept.loc%type);
v_deptrecord DeptRecord;
v_dept_name dept.dname%type;
v_dept_loc dept.loc%type;
cursor c1 --声明游标
is
select dname,loc from dept where deptno <= 10;
cursor c2(v_dept_no number) --有参数游标
is
select dname,loc from dept where deptno <= v_dept_no;
cursor c3(v_dept_no number) --有返回数据类型的游标
return DeptRecord
is
select deptno,dname,loc from dept where deptno <= v_dept_no;
cursor c4(v_dept_no number) --普通的游标
is
select deptno,dname,loc from dept where deptno <= v_dept_no;
v_dept_rec c4%rowtype; --基于游标定义记录变量,比DeptRecord方便
begin
open c1; --打开游标
loop
fetch c1 into v_dept_name,v_dept_loc; --提取游标
if c1%found then
dbms_output.put_line('c1:'|| v_dept_name||' '||v_dept_loc);
else
dbms_output.put_line('c1:'||'已经处理完结果了');
exit;
end if;
end loop;
open c2(20);
loop
fetch c2 into v_dept_name,v_dept_loc;
exit when c2%notfound;
dbms_output.put_line('c2:'|| v_dept_name||' '||v_dept_loc);
end loop;
open c3(v_dept_no => 30);
loop
fetch c3 into v_deptrecord;
exit when c3%notfound;
dbms_output.put_line('c3:'|| v_deptrecord.deptno||' '||v_deptrecord.dname||' '||v_deptrecord.loc);
end loop;
open c4(40);
loop
fetch c4 into v_dept_rec;
exit when c4%notfound;
dbms_output.put_line('c4:'|| v_dept_rec.deptno||' '||v_dept_rec.dname||' '||v_dept_rec.loc);
end loop;
close c1;
close c2;
close c3;
close c4;
end;
---for 循环的游标控制语句,不需要自己手动的打开,提取,关闭游标
declare
cursor c1(v_dept_no number default 10)
is
select deptno,dname from dept where deptno <= v_dept_no;
begin
for c1_rec in c1(30) loop
dbms_output.put_line('c1(30):'||c1_rec.deptno||' '||c1_rec.dname);
end loop;
for c1_rec in c1 loop
dbms_output.put_line('c1(10):'||c1_rec.deptno||' '||c1_rec.dname);
end loop;
end;
分享到:
相关推荐
Oracle 游标使用方法及语法大全 Oracle 游标是 PL/SQL 程序中的一种重要组件,用于处理查询结果集。游标可以分为隐式游标和显式游标两种,隐式游标由 PL/SQL 管理,隐式游标打开时查询开始,查询结束时隐式游标自动...
### Oracle游标使用大全 #### 一、概述 在Oracle数据库中,游标是一种重要的机制,用于处理查询结果集中的数据。游标允许程序逐行处理数据,这在需要对多行数据进行循环处理时非常有用。本文档旨在提供一个全面的...
### SQL游标使用详解 #### 一、引言 在SQL编程中,游标是一种用于处理查询结果集的工具,可以实现对数据行的逐行访问。本文将通过一个具体的示例来详细介绍如何使用SQL游标,并解释其背后的原理与应用场景。 ####...
以下是关于Oracle游标使用的一些关键知识点: 1. **游标的基本概念**: 游标(Cursor)是一种机制,它允许我们遍历和操作由SQL查询返回的结果集。通过游标,我们可以控制数据的读取顺序,一次只处理一行,或者在...
显式游标需要程序员明确声明、打开、读取、关闭,而隐式游标则由数据库系统自动管理,通常在DML语句(如INSERT、UPDATE、DELETE)中使用。 2. **查询 SELECT… INTO …** 在PL/SQL中,可以使用SELECT… INTO语句将...
在"游标.txt"文件中,可能包含了更多关于Oracle游标的使用实例和技巧,包括游标的声明、动态游标、游标变量、游标表达式以及游标在存储过程和函数中的应用。这些内容可以帮助你更深入地理解和掌握Oracle游标,提高你...
龙摆尾(坚行).sql.txt和游标实例.sql.txt很可能是包含具体游标使用示例的文件,可能涵盖了诸如迭代处理数据、基于条件更新数据等场景。实际应用中,游标常用于循环执行某个操作,例如批量更新满足特定条件的记录...
本资源“Oracle游标使用案例大全”提供了一系列实用的示例,旨在帮助学习者深入理解和掌握Oracle游标的用法。 1. **游标的基本概念** - 游标(Cursor):它是一个数据库系统中的结构,用于存储执行SQL查询后的结果...
### 明确游标使用示例 在下面的例子中,我们将通过几个不同的方法来展示如何使用明确游标: 1. **使用`WHILE`循环遍历游标** 在这个例子中,我们首先创建一个名为`PROC_STU1`的过程,它包含一个明确游标`cur_stu...
### SQL游标使用详解 #### 一、游标概述 在深入探讨SQL游标的使用之前,我们先来了解一下什么是游标。游标是数据库管理系统的功能之一,它允许用户逐行处理查询结果集中的数据。通常情况下,当我们执行一个SELECT...
### 数据库游标使用详解:Oracle数据库视角 在数据库领域,游标(Cursor)是一种用于处理数据查询结果集的强大工具,尤其在Oracle数据库中,游标的应用极为广泛且功能强大。本文将深入探讨Oracle数据库中游标的基本...
### Oracle游标使用及实例详解 #### 一、Oracle游标概述 在Oracle数据库中,游标(Cursor)是一种用于处理SQL查询结果集的方式。它允许用户逐行地读取和处理查询结果,这对于需要对每一行数据进行特定操作的情况非常...
### Oracle游标使用详解 #### 一、游标概述 游标是Oracle数据库中用于处理查询结果集的强大工具,尤其适用于需要逐行处理查询结果的情况。在Oracle中,游标可以分为两类:**显式游标**和**隐式游标**。 1. **隐式...
以上只是对Oracle游标使用的一个简要概述,具体到《Oracle 游标使用大全》这份文档,可能会包含更详尽的示例、技巧和案例,帮助开发者更好地理解和运用Oracle游标。通过学习和实践,我们可以提升数据库操作的效率和...
“Oracle数据库游标使用大全.pdf”这份文档可能详细介绍了以上内容,并提供了具体的示例代码和实践技巧,帮助读者深入理解和应用Oracle数据库游标。通过学习和实践这些知识,开发者能够更好地掌握Oracle数据库编程,...
Oracle 游标使用大全 Oracle 游标是 PL/SQL 中的一种重要的数据访问机制,通过游标,可以高效地访问和处理数据库中的数据。在本文中,我们将对 Oracle 游标的使用进行详细的介绍,包括游标的基本概念、游标的类型、...
### Oracle游标使用详解 #### 一、Oracle游标简介 在Oracle数据库中,游标是一种用于处理查询结果集的强大工具。它允许用户通过逐行访问数据来执行复杂的操作,如更新、删除或插入记录等。游标可以分为显式游标和...
### Oracle的游标使用详解 #### 一、游标概念介绍 在Oracle数据库中,游标(Cursor)是一种用于检索并处理多行数据的强大工具。它允许用户通过循环逐条处理查询结果集中的每一行数据,这对于需要进行复杂数据处理的...
根据给定的文件信息,我们可以总结出以下关于标准游标使用的相关知识点: ### 一、标准游标的定义 在数据库管理领域中,游标是一种重要的数据处理机制,它允许程序逐行地处理查询结果集中的数据。游标可以看作是...