一、不带参数的游标for循环

首先编写存储过程的整体结构,如下:

create or replace procedure test_proc is

  v_date date; --变量定义

begin

  select sysdate into v_date from dual;

end test_proc;

定义游标:

create or replace procedure test_proc is

  v_date date; --定义变量

  cursor cur is select * from ldcode; --定义游标

begin

  select sysdate into v_date from dual;

end test_proc;

编写for循环:

create or replace procedure test_proc is

  v_date date; --定义变量

  cursor cur is select * from ldcode where rownum<10; --定义游标

begin

  select sysdate into v_date from dual;

  --游标for循环开始

  for temp in cur loop --temp为临时变量名,自己任意起

    Dbms_Output.put_line(temp.Code); --输出某个字段,使用"变量名.列名"即可。

  end loop;

  --游标for循环结束

end test_proc;

测试运行,点击【DBMS Output】标签页查看结果如下图:

二、带参数的游标for循环

定义带参数的游标:

cursor cur(v_codetype ldcode.Codetype%TYPE) is

    select * from ldcode where codetype = v_codetype; --定义游标

定义游标格式:

cursor 游标名称(变量定义) is 查询语句;

注意:

where条件中的变量名v_codetype要与游标定义cur(v_codetype ldcode.Codetype%TYPE)中的一致。

编写for循环部分:

--游标for循环开始

  for temp in cur('llmedfeetype') loop

    --temp为临时变量名,自己任意起

    --cur('llmedfeetype')为"游标名称(传入的变量)"

    Dbms_Output.put_line(temp.Code); --输出某个字段,使用"变量名.列名"即可。

  end loop;

--游标for循环结束

测试运行,点击【DBMS Output】标签页查看结果如下图:

Oracle存储过程游标for循环怎么写的更多相关文章

  1. Oracle存储过程,游标使用

    Oracle存储过程: 语法: CREATE [OR REPLACE] PROCEDURE procedure_name (arg1 [mode1] datatype1,arg2 [mode2] da ...

  2. Oracle cursors 游标 for循环遍历

    oracle提供了for循环语句,让我们可以遍历select搜索的结果.用法也很简单,代码如下: DECLARE ; BEGIN FOR C IN C1 LOOP -- 对select出的每一行进行操 ...

  3. sql server 存储过程---游标的循环

    sqlserver中的循环遍历(普通循环和游标循环) sql 经常用到循环,下面介绍一下普通循环和游标循环 1.首先需要一个测试表数据Student

  4. oracle存储过程+游标处理select数据

    create or replace PROCEDURE UPDATE_RECORDCODE is cursor location_data is select * from location wher ...

  5. ORACLE存储过程,循环语法和游标

    1.定义所谓存储过程(Stored Procedure),就是一组用于完成特定数据库功能的SQL语句集,该SQL语句集经过编译后存储在数据库系统中.在使用时候,用户通过指定已经定义的存储过程名字并给出 ...

  6. oracle存储过程、声明变量、for循环|转|

    oracle存储过程.声明变量.for循环 1.创建存储过程 create or replace procedure test(var_name_1 in type,var_name_2 out ty ...

  7. oracle存储过程、声明变量、for循环(转)

    oracle存储过程.声明变量.for循环 1.创建存储过程 create or replace procedure test(var_name_1 in type,var_name_2 out ty ...

  8. [转]oracle存储过程、声明变量、for循环

    oracle存储过程.声明变量.for循环 1.创建存储过程 create or replace procedure test(var_name_1 in type,var_name_2 out ty ...

  9. oracle存储过程(返回列表的存储结合游标使用)总结 以及在java中的调用

    这段时间开始学习写存储过程,主要原因还是因为工作需要吧,本来以为很简单的,但几经挫折,豪气消磨殆尽,但总算搞通了,为了避免后来者少走弯路,特记述与此,同时亦对自己进行鼓励. 以下是我在开发项目中第一次 ...

随机推荐

  1. prometheus(4)之alertmanager报警插件

    报警处理流程如下: 1. Prometheus Server监控目标主机上暴露的http接口(这里假设接口A),通过Promethes配置的'scrape_interval'定义的时间间隔,定期采集目 ...

  2. 快速排序--洛谷卡TLE后最终我还是选择了三向切割

    写在前边 这篇文章呢,我们接着聊一下排序算法,我们之前已经谈到了简单插入排序 和ta的优化版希尔排序,这节我们要接触一个更"高级"的算法了--快速排序. 在做洛谷的时候,遇到了一道 ...

  3. 3D 穿梭效果?使用 CSS 轻松搞定

    背景 周末在家习惯性登陆 Apex,准备玩几盘.在登陆加速器的过程中,发现加速器到期了. 我一直用的腾讯网游加速器,然而点击充值按钮,提示最近客户端升级改造,暂不支持充值(这个操作把我震惊了~).只能 ...

  4. 史上最简单的排序算法?看起来却满是bug

    大家好,我是雨乐. 今天在搜论文的时候,偶然发现一篇文章,名为<Is this the simplest (and most surprising) sorting algorithm ever ...

  5. C# 计算农历日期方法(2021版)

    解决问题 旧版农历获取方法报错,会有 到 2021年 m数组越界了 if (LunarData[m] < 4095) 此方法可以解决 主体代码 public static class China ...

  6. 性能优化 | Go Ballast 让内存控制更加丝滑

    关于 Go GC 优化的手段你知道的有哪些?比较常见的是通过调整 GC 的步调,以调整 GC 的触发频率. 设置 GOGC 设置 debug.SetGCPercent() 这两种方式的原理和效果都是一 ...

  7. selenium的 元素定位、元素信息、交互

    selenium的元素定位? 元素定位:自动化要做的就是模拟鼠标和键盘来操作来操作这些元素,点击.输入等等.操作这些元素前首先 要找到它们,WebDriver提供很多定位元素的方法 方法: 1.fin ...

  8. 使用nacos作为配置中心统一管理配置

    基础环境 引入所需依赖包 <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>s ...

  9. [noi32]sort

    先解释一下checker.cpp,它的判定标准是2e7,即答案超过2e7就认为代价过大了. 首先,很容易想到的办法是直接对其快排,从外到内交换区间即可,然而这样会被邪恶的出题人给卡掉(当然其实随便一组 ...

  10. [gym102770L]List of Products

    有一个很重要的性质:若$a\le b$且$c\le d$,则$ac\le bd$ 根据这一性质,就可以利用单调性$o(n)$求出小于$a_{x}\cdot b_{y}$的数的个数(先要对$a$和$b$ ...