Oracle中遍历Ref Cursor示例】的更多相关文章

示例编写环境 数据库:Oracle Database 12c Enterprise Edition Release 12.1.0.1.0 - 64bit Production 登陆用户:Scott Oracle IDE:Oracle SQL Developer Version 4.0.0.12 SET SERVEROUTPUT ON; DECLARE TYPE REC IS RECORD( EMPNO BYTE), ENAME BYTE) ); TYPE TB IS TABLE OF REC;…
游标(Cursor):用来查询数据库,获取记录集合(结果集)的指针,可以让开发者一次访问一行结果集,在每条结果集上作操作. 游标可分为: 1.       静态游标:分为显式(explicit)游标和隐式(implicit)游标. 2.       REF游标:是一种引用类型,类似于指针. 1.静态游标 1.1显式游标 定义格式: CURSOR 游标名 ( 参数 )  IS Select 语句 FOR UPDATE [OF [schema.]table.column[,[schema.]tabl…
基本使用方法及示例 1.基本结构: CREATE OR REPLACE PROCEDURE 存储过程名字 (参数1 IN NUMBER,参数2 IN NUMBER) AS 变量1 INTEGER :=0; 变量2 DATE; BEGIN END 存储过程名字 2.无参形式的procedure: --无参procedure create or replace procedure pro_no_param is begin dbms_output.put_line('the procedure wi…
这篇文章主要介绍了oracle中to_date详细用法示例,包括期和字符转换函数用法.字符串和时间互转.求某天是星期几.两个日期间的天数.月份差等用法 TO_DATE格式(以时间:2007-11-02 13:45:25为例) 1. 日期和字符转换函数用法(to_date,to_char) select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') as nowTime from dual; //日期转化为字符串 select to_char(sysdate,'…
在工作中常常会遇到一些数据表包含父子关系的数据,比如行业.地区等等,如果需要将其节点按父子关系一步一步列出来,就需要使用connect by了. 如有由自身行业代码basecode和父行业代码parentcode构成父子关系的行业表tindustry: 如果想获取"\申万明细行业\农林牧渔\林业"这样详细的行业树,就需要使用如下查询: SELECT BASECODE, SYS_CONNECT_BY_PATH(BASECODE, '\') AS INDU_CODE, SYS_CONNEC…
from:http://www.111cn.net/database/Oracle/42873.htm 1,什么是 REF游标 ? 动态关联结果集的临时对象.即在运行的时候动态决定执行查询. 2,REF 游标 有什么作用? 实现在程序间传递结果集的功能,利用REF CURSOR也可以实现BULK SQL,从而提高SQL性能. 3,静态游标和REF 游标的区别是什么? ①静态游标是静态定义,REF 游标是动态关联: ②使用REF 游标需REF 游标变量. ③REF 游标能做为参数进行传递,而静态游…
地址: http://otndnld.Oracle.co.jp/document/products/oracle10g/102/doc_cd/Java.102/B19275-03/datacc.htm#BHCJBJCC SQL数据类型 JDBC类型代码 标准的Java类型 Oracle扩展的Java类型   1.0标准的JDBC类型:     CHAR java.sql.Types.CHAR java.lang.String oracle.sql.CHAR VARCHAR2 java.sql.T…
ORACLE中RECORD.VARRAY.TAB.IS REF CURSOR LE的使用及实例详解 create or replaceprocedure PRO_RECORD_ROW_TAB_EXAMPLEIS--记录一行二列的数据type V_REC is RECORD(FACT_NO char(4),FACT_ODR_NO char(20));--对变量进行实例化V_REC1 V_REC;--定义一个表示表中一行记录的变量v_row1 odrm%rowtype; ----指定是一个集合的表的…
http://blog.csdn.net/gyflyx/article/details/6889028 引用一.显式cursor 显式是相对与隐式cursor而言的,就是有一个明确的声明的cursor.显式游标的声明类似如下(详细的语法参加plsql ref doc ): cursor cursor_name (parameter list) is select ... 游标从declare.open.fetch.close是一个完整的生命旅程.当然了一个这样的游标是可以被多次open进行使用的…
一.显式cursor 显式是相对与隐式cursor而言的,就是有一个明白的声明的cursor.显式游标的声明类似例如以下(具体的语法參加plsql ref doc ): cursor cursor_name (parameter list) is select ... 游标从declare.open.fetch.close是一个完整的生命旅程. 当然了一个这种游标是能够被多次open进行使用的,显式cursor是静态cursor,她的作用域是全局的,但也必须明确,静态cursor也仅仅有pl/s…
游标是SQL的一个内存工作区,由系统或用户以变量的形式定义.游标的作用就是用于临时存储从数据库中提取的数据块.在某些情况下,需要把数据从存放在磁盘的表中调到计算机内存中进行处理,最后将处理结果显示出来或最终写回数据库.这样数据处理的速度才会提高,否则频繁的磁盘数据交换会降低效率. 游标有两种类型:显式游标和隐式游标.在前述程序中用到的SELECT...INTO...查询语句,一次只能从数据库中提取一行数据,对于这种形式的查询和DML操作,系统都会使用一个隐式游标.但是如果要提取多行数据,就要由程…
关键字 概念 类型 异常处理 一 概念 游标是SQL的一个内存工作区,由系统或用户以变量的形式定义.游标的作用就是用于临时存储从数据库中提取的数据块.在某些情况下,需要把数据从存放在磁 盘的表中调到计算机内存中进行处理,最后将处理结果显示出来或最终写回数据库.这样数据处理的速度才会提高,否则频繁的磁盘数据交换会降低效率. 二  类型   Cursor类型包含三种: 隐式Cursor,显式Cursor和Ref Cursor(动态Cursor). 1. 隐式Cursor: 1).对于Selec…
1. 自定义 ref cursor 和 sys_refcursor; 2. sys_refcursor 做为参数传递结果集; 3. ref cursor 做为参数传递结果集; 1. 自定义 ref cursor 和 sys_refcursor: declare type df_ref is ref cursor; --定义 ref cursor rf df_ref; --声明 rf 是df_ref ename varchar2(30); begin open rf for 'select ena…
一  概念 游标是SQL的一个内存工作区,由系统或用户以变量的形式定义.游标的作用就是用于临时存储从数据库中提取的数据块.在某些情况下,需要把数据从存放在磁盘的表中调到计算机内存中进行处理,最后将处理结果显示出来或最终写回数据库.这样数据处理的速度才会提高,否则频繁的磁盘数据交换会降低效率. 二  类型   Cursor类型包含三种: 隐式Cursor,显式Cursor和Ref Cursor(动态Cursor). 1. 隐式Cursor: 1).对于Select -INTO-语句,一次只能从数据…
1.oracle 中创建触发器示例 CREATE TABLE "CONCEPT"."FREQUENCYMODIFYLOG" ( "FREQUENCYID" NUMBER(10,0), "NAME" NVARCHAR2(30), "CODE" VARCHAR2(10 CHAR), "MNEMONICCODE" VARCHAR2(10 CHAR), "SPELLCODE"…
版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/MyDreamNeverstop/article/details/78604033 一  概念  游标是SQL的一个内存工作区,由系统或用户以变量的形式定义.游标的作用就是用于临时存储从数据库中提取的数据块.在某些情况下,需要把数据从存放在磁盘的表中调到计算机内存中进行处理,最后将处理结果显示出来或最终写回数据库.这样数据处理的速度才会提高,否则频繁的磁盘数据交换会降低效率.  二  类型    C…
最近在研究系统启动时将数据加载到内存非常耗时,想着是否有办法优化!经过日志打印测试发现查询时间(查询时间:将数据库数据查询到系统中并转为List<Map>或List<*.Class>,下面将全部针对转化类型为List<Map>进行分析)居然和数据加载时间一样长(加载时间:将查询到的数据组装成系统中业务所需要的数据模型,基本调用了所有key为get/set方法).由此我觉得系统查询时间是有优化的空间的,并通过两个周末对此进行了研究学习并优化此问题,一下是整体流程: 1.疑…
--创建过程,参数为sys_refcursor,为out型 create or replace procedure aabbsys_refcursor(o out sys_refcursor) is begin open o for select * from basplumain; end; --- --测试过程,使用aabbsys_refcursor传出的值 create or replace procedure aabb_test_sys_refcursor(return out int)…
用了两年Oracle还没写过存储过程,真是十分惭愧,从今天开始学习Oracle存储过程,完全零起点,争取每日一篇学习笔记,可能开始认识的不全面甚至有错误,但坚持下来一定会有收获. . 建立一个存储过程 create or replace PROCEDURE firstPro IS BEGIN DBMS_OUTPUT.PUT_LINE('Hello World!'); END; 其中IS关键字替换为AS关键字结果不会出现任何变化,大多认为他们是等同的,但也有一种说法解释为:一般PACKAGE 或者…
1,常见的操作数据库的技术有那些 jdbc     使用java 访问数据库的技术    PLSQL  (procedure  过程化sql) 在数据库内部操作数据的技术    proc/c++    c 和 c++ 访问数据库的技术    ODBC      微软提供访问数据库的技术    OCI          oracle  底层的连接接口 2,Oracle中的复合数据类型 Oracle中的复合数据类型record,table,cursor 2.1 record类型 2.1.1 语法 /…
转自http://blog.csdn.net/w183705952/article/details/7354974 DML(Data Manipulation Language,数据操作语言):用于检索或者修改数据.    DML包括:  SELECT:用于检索数据:        INSERT:用于增加数据到数据库:        UPDATE:用于从数据库中修改现存的数据         DELETE:用于从数据库中删除数据. DDL(Data Definition Language,数据定…
游标的简介 逐行处理查询结果,以编程的方式访问数据. 游标的类型: 1,隐式游标:在 PL/SQL 程序中执行DML SQL 语句时自动创建隐式游标,名字固定叫sql. 2,显式游标:显式游标用于处理返回多行的查询. 3,REF 游标:REF 游标用于处理运行时才能确定的动态 SQL 查询的结果 一.隐式游标: q在PL/SQL中使用DML语句时自动创建隐式游标 q隐式游标自动声明.打开和关闭,其名为 SQL q通过检查隐式游标的属性可以获得最近执行的DML 语句的信息 q隐式游标的属性有: q…
一.什么要使用包?        在一个大型项目中,可能有很多模块,而每个模块又有自己的过程.函数等.而这些过程.函数默认是放在一起的(如在PL/SQL中,过程默认都是放在一起 的,即Procedures中),这些非常不方便查询和维护,甚至会发生误删除的事件. PL/SQL为了满足程序模块化的需要,引入了包的构造.通过使用包就可以分类管理过程和函数等. (1)包是一种数据库对象,相当于一个容器.将逻辑上相关的过程.函数.变量.常量和游标组合成一个更大的单位.用户可以从其他 PL/SQL 块中对其…
游标 游标的简介: 逐行处理查询结果,以编程的方式访问数据 游标的类型: 1,隐式游标:在 PL/SQL 程序中执行DML SQL 语句时自动创建隐式游标,名字固定叫sql. 2,显式游标:显式游标用于处理返回多行的查询. 3,REF 游标:REF 游标用于处理运行时才能确定的动态 SQL 查询的结果 隐式游标: q在PL/SQL中使用DML语句时自动创建隐式游标 q隐式游标自动声明.打开和关闭,其名为 SQL q通过检查隐式游标的属性可以获得最近执行的DML 语句的信息 q隐式游标的属性有:…
1.获取动态SQL中的列名及类型 DECLARE l_curid INTEGER; l_cnt NUMBER; l_desctab dbms_sql.desc_tab; l_sqltext ); BEGIN l_sqltext := 'select * from dba_objects where rownum<= 10'; --可以是任意有效的查询sql文本 l_curid := dbms_sql.open_cursor(); dbms_sql.parse(l_curid, l_sqltext…
引子 这是测试环境存在了很久的问题.由于基础配置信息(如:代理人信息)不像生产环境有专人维护,常常会有数据过期,导致无法使用的情况. 而很多配置数据是在外围系统维护(如代理人信息,在销管系统)以往的解决办法: 1. 联系销售管理系统协助配置. 2. 审核通过后同步到核心,然后出单 问题点:因为需要其他人配合,有等待:碰到大量数据配置时对配置人员来说很麻烦. 1. 解决方案(版本1.1) 工具:数据库存过 思路:需要导入数据的表放在数据库中.遍历这些表,在遍历过程中先删除表中符合条件的数据,然后将…
今天把oracle中的包和游标学习了下,不废话,网上的的有些代码是错误的,抄来抄去,就自己实践了下,做个记录.直接上图,上代码 通过plsql创建自己的的包,包分为包头和包体. 1.包头如下: CREATE OR REPLACE PACKAGE JAVALINKTEST IS TYPE CURSOR_TYPE IS REF CURSOR; --定义游标 PROCEDURE TEST_CURSOR(INPUT STRING, CURSOR_BACK OUT CURSOR_TYPE); END JA…
  一.24小时的形式显示出来要用HH24 select to_char(sysdate,'yyyy-MM-dd HH24:mi:ss') from dual; select to_date('2005-01-01 13:14:20','yyyy-MM-dd HH24:mi:ss') from dual; 二.to_date() function 1.日期格式参数含义说明 D一周中的星期几 DAY天的名字,使用空格填充到9个字符 DD月中的第几天 DDD年中的第几天 DY天的简写名 IW ISO…
最近利用NHibernate映射类型为Clob字段在插入数据时发现当字符的字节数(一个半角字符一个字节,一个全角字符两个字节)在2000-4000之间时报错(ORA-01461:仅可以插入LONG列的LONG值赋值).经过不断查找资料和自己的试验该问题终于得到解决,下边我将自己的心得给大家做一个分享. 准备 系统环境 xp+.net2.0+oracle9i 表结构(由于是测试,表结构随便建了一张) XX  字段名 类型 ID VARCHAR2(70) TEST CLOB   测试   方式1:直…