文档章节

plsql创建存储过程(二、使用游标返回多列值)

w
 wolf-gao
发布于 2017/03/16 22:02
字数 290
阅读 255
收藏 0

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>

在使用存储过程中,经常回返回多个值的情况存在,那么就回使用游标,我的理解就是一个可以移动的行指针,在本行操作完成后会自动指向下一行,用以遍历所有行元素

简单实例

create or replace procedure pro_test3
is
v_ename emp.ename%type;
cursor cur_ename is select ename from emp;
begin
  open cur_ename;
  loop
    fetch cur_ename into v_ename;
    exit when cur_ename%notfound;
    dbms_output.put_line(v_ename);
  end loop;
  close cur_ename;
end;

其中声明变量部分,emp.ename%type表示声明变量v_ename与emp表中的ename字段类型相同

cursor cur_ename is select ename from emp;表示声明一个游标,名称为cur_ename,并定义其内容为select ename from emp返回的结果集

在存储过程体中,使用游标需要先执行open cur_ename来打开游标

loop表示循环输出,也就是指针随结果下移一步

fetch cur_ename into v_ename;表示 将本次游标所指行内的数据赋值给变量v_ename;

exit when  cur_ename%notfound;表示当游标指针所指行内没有数据时跳出循环,

存储过程调用

begin
  pro_test3;
end;

 

 

 

 

 

 

© 著作权归作者所有

w
粉丝 0
博文 4
码字总数 889
作品 0
新乡
私信 提问
Oracle-14:PLSQL

------------吾亦无他,唯手熟尔,谦卑若愚,好学若饥------------- PL/SQL PL/SQL(Procedural Language):过程化sql语言! 在原本的sql语句之上,再增加一些逻辑或者循环等操作。 1:基本语法 ...

晨曦dawn
2018/05/22
0
0
Oracle11G基本操作

[1].创建表空间 CREATE TABLESPACE SYPRO_201310 DATAFILE 'F:ORACLE_11GoradataorclSYPRO_201310.DBF' SIZE 10M AUTOEXTEND ON 在指定的F盘下创建一个名SYPRO_201310.DBF的文件初始空间是1......

liu13430
2016/03/11
46
0
如何在PLSQL中调试PACKAGE包中的FUNCTION函数

如何在PLSQL中调试PACKAGE包中的FUNCTION函数 Oracle中的packages包是一组包含procedures存储过程、functions函数和游标等元素的组合。相比Sybase数据库的SQL Advantage工具,Oracle数据库的...

yl497103815
2018/07/02
0
0
Java程序员的日常——存储过程知识普及

存储过程是保存可以接受或返回用户提供参数的SQL语句集合。在日常的使用中,经常会遇到复杂的业务逻辑和对数据库的操作,使用存储过程可以进行封装。可以在数据库中定义子程序,然后把子程序...

青夜之衫
2017/12/05
0
0
oracle常见基础知识

oracle使用的脚本语言称为什么? PL-SQL oracle中游标的分类? oracle中游标分为两类:显示游标和隐式游标 oracle中function与procedure的区别? (1) function一定要有返回值,但procedure不...

Gong_Chen
2016/04/04
111
0

没有更多内容

加载失败,请刷新页面

加载更多

dynamic-connectivity 动态连通性问题之 quick-union 算法

quick-union 的思想是:若对象 p 的 root_id 和对象 q 的 root_id 相等,则认为 p 和 q 连通。 若要将对象 p 和对象 q 连通(已知两对象未连通),则将 p 的 root_id 的值设为 q 的 root_id ...

Phpythoner_Alei
今天
33
0
OSChina 周六乱弹 —— 实在选不出来就唱国歌

Osc乱弹歌单(2020)请戳(这里) 【今日歌曲】 @花间小酌 :#今日歌曲推荐# 分享阿冗的单曲《你的答案》。--祝大家在2020年都找到自己答案。 《你的答案》- 阿冗 手机党少年们想听歌,请使劲...

小小编辑
今天
10
0
Maven打包可执行Jar包的方法

在使用Java开发中,会使用到将工程打包成可执行的jar包的情况,那么在maven中怎么将项目中的依赖包都添加到jar中呢。在pom.xml中添加一下插件: <build><plugins><plugin><ar...

CapJes
今天
10
0
使用vue 开发地图类系统(openlayers.js)的注意。

使用vue 开发地图类系统的注意。 1、使用地图应该创建的对象 少使用 vue 的data 和计算属性(comments)存数据或是vuex。 为什么要要注意这个问题呢? 答:这个就要了解到vue的实现原理 。原理...

DY-Tao
昨天
7
0
web移动端学习:高德地图demo(一)

在高德地图开发中申请开发者资格,然后在控制台中新建应用,获得KEY; 新建模板HTML文件; <!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>地图demo</title><scri......

dxiya
昨天
8
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部