额,一直提起游标就头疼,总感觉是很高大上的东西,望而却步...

今天要做的东西涉及到了实时更新数据,要用到JOB 存储过程  游标

通过在网上查资料,请教同事,也开始继续深入oracle,,,,小菜啊小菜。。。

做个笔记,方便以后查看

CREATE OR REPLACE PROCEDURE COST_MES_SL_INIT_SP_001(P_SYSDATE DATE) IS  
V_P_SYSDATE DATE;
V_YEAR NUMBER;
V_MONTH NUMBER;

CURSOR C_FACILITY_ID IS  --创建游标
SELECT FACILITY_ID   
FROM COST_BASE_FACILITY_VW
WHERE 1 = 1 /* FACILITY_ID IN (SELECT FACILITY_ID
FROM ZZYX_USER_JLMES_FACILITY_TB T
WHERE USER_ID = {$SYS_USERID$})*/
AND U_LOWER = 1
ORDER BY U_ORDER;

R_FACILITY_ID C_FACILITY_ID%ROWTYPE;   定义游标变量,我理解为对象

BEGIN

V_P_SYSDATE := P_SYSDATE;
SELECT ADD_MONTHS(TRUNC(SYSDATE), -1) INTO V_P_SYSDATE FROM DUAL; --获取上个月的日期

V_YEAR := EXTRACT(YEAR FROM V_P_SYSDATE);  --年
V_MONTH := EXTRACT(MONTH FROM V_P_SYSDATE);--月

OPEN C_FACILITY_ID;--打开游标
LOOP--开始循环游标
FETCH C_FACILITY_ID
INTO R_FACILITY_ID;
EXIT WHEN C_FACILITY_ID%NOTFOUND;
COST_MES_SL_INIT_SP(R_FACILITY_ID.FACILITY_ID, V_YEAR, V_MONTH);  --调用另一个存储过程
END LOOP;  --结束循环
CLOSE C_FACILITY_ID;   --关闭游标
COMMIT;
END COST_MES_SL_INIT_SP_001;

oracle 游标的使用的更多相关文章

  1. Oracle 游标示例,带异常处理

    Oracle游标示例一则,带异常处理. DECLARE CURSOR c_dl IS SELECT ID, NSRSBH, WSPZXH, ZXYY_DM, HZRQ, SWJG_DM, GXSJ F ...

  2. Oracle游标带参数

    Oracle游标是可以带参数的,而SqlServer的游标就不可以了 create or replace procedure a as cursor b(c_id int)is select * fr ...

  3. Oracle 游标使用(转)

    这个文档几乎包含了oracle游标使用的方方面面,全部通过了测试 ; ; dbms_output.put_line(sql) loop dbms_output.put_line( ; ; ; r_te ...

  4. Oracle 游标使用全解(转)

    转自:http://www.cnblogs.com/sc-xx/archive/2011/12/03/2275084.html 这个文档几乎包含了oracle游标使用的方方面面,全部通过了测试 -- ...

  5. Oracle游标动态赋值

    1. oracle游标动态赋值的小例子 -- 实现1:动态给游标赋值 -- 实现2:游标用表的rowtype声明,但数据却只配置表一行的某些字段时,遍历游标时需fetch into到精确字段 CREA ...

  6. dapper支持oracle游标

    dapper支持oracle游标 Dapper是一个轻型的ORM类.它有啥优点.缺点相信很多朋友都知道了,园里也有很多朋友都有相关介绍,这里就不多废话. 如果玩过Oracle都知道,存储过程基本都是通 ...

  7. Oracle游标的使用示例

    此文是使用Oracle游标的几种方式,for...in会自动打开游标,fetch...into需要手动打开游标,游标类似于一个只会往前移动的指针,每次指向数据集中的一行数据,通过游标可以打开数据集,也 ...

  8. Oracle游标介绍

    Oracle游标使用详解: 游标: 用来查询数据库,获取记录集合(结果集)的指针,我们所说的游标通常是指显式游标,因此从现在起没有特别指明的情况,我们所说的游标都是指显式游标.要在程序中使用游标,必须 ...

  9. Oracle游标使用

    Oracle游标介绍: --声明游标 CURSOR cursor_name IS select_statement --For 循环游标 --()定义游标 --()定义游标变量 --()使用for循环 ...

  10. [转载]Oracle 游标使用全解

    这个文档几乎包含了oracle游标使用的方方面面,全部通过了测试 -- 声明游标:CURSOR cursor_name IS select_statement --For 循环游标--(1)定义游标- ...

随机推荐

  1. 分析$.isPlainObject

    作者:zccst 本次学习$.isPlainObject,是不是一个普通对象.测试对象是否是纯粹的对象(通过 "{}" 或者 "new Object" 创建的) ...

  2. ZOJ 3331 Process the Tasks

    双塔DP. #include<cstdio> #include<cstring> #include<queue> #include<string> #i ...

  3. Android SQLite 加密模块实现入门

    安卓的安全性那是众所周知,最近学习安卓apk反编译,发现某些即时通讯软件都封装了自己独立使用的数据库模块(从framework java/C++ 一直到底层的SQLite的C库), 为了防止被root ...

  4. 《OpenCV3 计算机视觉--Python语言实现 第二版》源代码及纠错

    1.源代码下载地址 <OpenCV3 计算机视觉--Python语言实现 第二版>由我们翻译,英文书名<Learning OpenCV3 Computer Vision with P ...

  5. R Student Companion(R语言初学指南)的源代码_数据_插图

    下载内容见附件:http://files.cnblogs.com/files/ml-cv/data_And_R_script.zip.

  6. java实现——005从尾到头打印链表

    import java.util.Stack; public class T005 { public static void main(String[] args){ Node n1 = new No ...

  7. 【转】安卓Fragment不完全介绍

    转两篇博客: 1.http://blog.csdn.net/lmj623565791/article/details/37970961 2.http://blog.csdn.net/lmj623565 ...

  8. Tomcat用法--Servlet开发

    本来想玩一下微信公众号开发,没想到学习曲线真是恶心的很,首先你要配置Tomcat--你要会Servlet--你要会JSP,妈的!贴出来 快哭瞎了,各种文档,好吧,提供一个教你搞java EE文档的博客 ...

  9. jdk1.8中的for循环

    jdk1.8 从语法角度,感觉发生的变化还是蛮大的.在此记录一下. for 循环 public static void main(String[] args) { List<Animal> ...

  10. vdi、vhd、vmdk虚拟格式转换

    VirtualBox带来VBoxManager.exe,可以来转换格式. 命令如下(Windows环境,Linux版的应该也有VBoxManager这个二进制文件): VBoxManager存在于Vi ...