显示游标的操作步骤:定义游标、打开游标、提取数据、关闭游标
1.定义游标
cursor cursor_name is select_statement;
2.打开游标
open cursor_name;
3.提取数据
语法一:fetch cursor_name into variable1,variable2...;
语法二:fetch cursor_name bulk collect into collect1,collect2,...[limit rows];
4.关闭游标:
close cursor_name;
游标属性:cursor_name%ISOPEN,cursor_name%FOUND
cursor_name%NOTFOUND,cursor_name%ROWCOUNT
Example 1:
declare
cursor emp_cursor is
select ename,sal from emp where dept=10;
v_ename emp.ename%TYPE;
v_sal emp.sal%TYPE;
begin
open emp_cursor;
loop
fetch emp_cursor into v_ename,v_sal;
exit when emp_cursor%NOTFOUND;
dbms_output.put_line(v_ename||': '||v_sal);
end loop;
close emp_cursor;
end;
Example 2(在显示游标中,使用fetch.. bulk collect into语句提取数据):
declare
cursor emp_cursor is
select ename from emp where deptno=10;
TYPE ename_table_type is TABLE OF VARCHAR2(10);
ename_table ename_table_type;
begin
open emp_cursor;
fetch emp_cursor bulk collect into ename_table;
for i in 1.. ename_table.count loop
dbms_output.put_line(ename_table(i));
end loop;
close emp_cursor;
end;
Example 3:(使用游标属性)
declare
cursor emp_cursor is
select ename from emp where deptno=10;
TYPE ename_table_type is TABLE OF VARCHAR2(10);
ename_table ename_table_type;
begin
if not emp_cursor%ISOPEN then
open emp_cursor;
end if;
fetch emp_cursor bulk collect into ename_table;
dbms_ouptput.put_line('提取的总计行数:'||emp_cursor%ROWCOUNT);
close emp_cursor;
end;
Example 4:(基于游标定义记录变量)
declare
cursor emp_cursor is select ename,sal from emp;
emp_record emp_cursor%ROWTYPE;
begin
open emp_cursor;
loop
fetch emp_cursor into emp_record;
exit when emp_cursor%NOTFOUND;
dbms_output.put_line('雇员名:'||emp_record.ename
||',雇员工资:'||emp_record.sal);
end loop;
close emp_cursor;
end;
Example 5:(参数游标)
定义参数游标时,游标参数只能指定
数据类型,而不能指定长度,定义参数游标语法如下:
cursor cursor_name(parameter_name datatype) is select_statement;
declare
cursor emp_cursor(no number) is
select ename from emp where deptno=no;
v_ename emp.ename%type;
begin
open emp_cursor(10);
loop
fetch emp_cursor into v_ename;
exit when emp_cursor%NOTFOUND;
dbms_output.put_line(v_ename);
end loop;
close emp_cursor;
end;
分享到:
相关推荐
### PL/SQL编程基础知识 #### 一、PL/SQL简介 PL/SQL(Procedural Language for SQL)是一种过程化语言,它结合了SQL的数据操纵功能和过程化语言的控制结构,使用户能够灵活地控制数据操作流程。作为Oracle数据库...
【PL/SQL编程】是Oracle数据库中用于数据库管理和应用程序开发的一种高级过程语言,它结合了SQL查询语言的威力和高级编程语言的灵活性。本章详细介绍了PL/SQL的基础知识,帮助初学者快速掌握该语言。 **4.1 PL/SQL...
Oracle PL/SQL是一种强大的编程语言,它结合了SQL的数据处理能力与PL的程序设计特性,是Oracle数据库系统中用于创建存储过程、函数、触发器和包的主要工具。在这个"Oracle PL/SQL实战(待续)"的主题中,我们将深入...
1. **编程能力**:PL/SQL允许编写包含控制结构(如循环、条件语句)和异常处理的程序块,这些块可以存储在数据库中并按需调用,提高了数据库应用的灵活性和复杂性。 2. **数据处理**:通过PL/SQL,用户可以直接对...
这个"PL/SQL最新中文手册"显然是一份详细解释PL/SQL 7.0版本的指南,对于学习和精通Oracle数据库编程至关重要。以下是手册可能涵盖的一些核心知识点: 1. **PL/SQL基础**:手册可能会从基础开始,介绍PL/SQL的基本...
Oracle 10g PL/SQL 是Oracle数据库系统中用于创建和管理存储过程、函数、触发器等数据库对象的编程语言。本教程旨在为初学者提供一个全面的学习平台,同时也为经验丰富的开发者提供参考资料。PL/SQL是Oracle特有的...
### PL/SQL基础编程知识点详解 #### 一、PL/SQL概述 PL/SQL,全称为Procedural Language for SQL,是Oracle数据库特有的高级程序设计语言。它结合了SQL的数据处理能力和传统编程语言的控制结构,使开发者能够在...
Oracle PL/SQL是一种强大的编程语言,它将数据库管理和应用程序逻辑紧密结合起来,是Oracle数据库系统中的核心组件之一。这本书“Oracle PL/SQL实例编程”显然旨在深入讲解如何利用PL/SQL进行实际开发工作,通过实例...
Oracle PL/SQL编程详解是Oracle数据库开发人员必须掌握的技术之一。Oracle PL/SQL是一种用于Oracle数据库系统的程序设计语言,它是SQL语言的扩展,包含了许多能增加程序可读性和模块化的特性。PL/SQL代码被编译成...
《精通Oracle 10g PL/SQL编程》是中国水利水电出版社出版的一本专为数据库管理员、软件开发者和系统架构师量身打造的书籍,由王海亮、林立新等专家共同编著。这本书深入浅出地介绍了Oracle数据库中最重要的编程语言...
《精通PL/SQL》这本书是针对Oracle数据库系统中PL/SQL编程语言的深度解析与实践指南,主要面向希望提升在Oracle环境下使用PL/SQL技能的专业人士。PL/SQL,全称为Procedural Language/Structured Query Language,是...
循环语句是PL/SQL编程中用来重复执行一组语句的结构,包括loop、while、for三种形式,它们各自有不同的使用场景和语法。 分支条件语句在PL/SQL中用来根据不同的条件执行不同的代码分支,主要包括CASE表达式和if-...
Oracle PL/SQL是一种强大的编程语言,它结合了SQL(结构化查询语言)的数据库操作功能与PL/SQL的程序设计特性,广泛应用于Oracle数据库的开发和管理。这本书"Oracle PL/SQL从入门到精通"的配套源代码,显然是为了...
#### 一、PL/SQL编程基础 - **PL/SQL简介**:PL/SQL(Procedural Language for SQL)是Oracle数据库的一种内嵌式过程化语言,用于增强SQL的功能。它允许在SQL查询的基础上添加控制流语句、变量定义、错误处理等特性...
PL/SQL是Oracle数据库系统中的一个关键组成部分,它是一种结合了SQL与过程编程的语言,用于在Oracle环境中开发数据库应用程序。PL代表Procedural Language,SQL则代表Structured Query Language。这个"PL/SQL安装包...
Oracle PL/SQL编程是...以上只是PL/SQL编程的冰山一角,实际使用中还包括流程控制语句、游标处理、动态SQL、包、对象类型等更高级的概念。学习PL/SQL需要不断实践和深入研究,才能充分发挥其在数据库管理中的作用。
总结来说,PL/SQL编程语言是Oracle数据库的核心技术之一,它在数据库编程领域扮演着重要的角色。熟练掌握PL/SQL不仅能够提高数据库操作的效率,还能编写出结构良好、功能强大的数据库应用程序。随着Oracle数据库版本...
《Oracle PL/SQL专家指南-高级PL/SQL解决方案的设计与开发》是一本深入探讨Oracle数据库中的PL/SQL编程的专业书籍。PL/SQL是Oracle数据库特有的编程语言,它结合了SQL的查询能力与过程式编程语言的功能,使得数据库...
Oracle PL/SQL编程是Oracle数据库系统中的一个核心组成部分,它扩展了SQL的语法,使得数据库管理及应用程序开发更具灵活性和可编程性。PL/SQL融合了SQL查询和控制流语句,提供了处理复杂业务逻辑的能力。 PL/SQL的...