作者:freaky
出处:http://blog.youkuaiyun.com/freaky
1、取得存储过程返回的值
CallableStatement cs = conn.prepareCall(
"{call proc_fbquery(?,?,?)}"); //调用存储过程
cs.setString(1,mem);
cs.setInt(2,n);
cs.registerOutParameter(3,oracle.jdbc.OracleTypes.CURSOR);
cs.execute();
rs=(ResultSet)cs.getObject(3);
2、对存储过程赋值时:
CallableStatement cs= conn.prepareCall("{call proc_fbquery(?)}"); //调用存储过程
cs.registerOutParameter(1,oracle.jdbc.OracleTypes.CURSOR);
cs.setCursorName(cusorName); //提供result的名称
cs.setString(1,rs);
rs=cs.executeQuery();
rs =(ResultSet)cs.getObject(1);
相关推荐
HIVE数仓数据血缘分析工具-SQL解析
一、数仓经常会碰到的几类问题: 1、两个数据报表进行对比,结果差异很大,需要人工核对分析指标的维度信息,比如从头分析数据指标从哪里来,处理条件是什么,最后才能分析出问题原因。 2、基础数据表因某种原因需要修改字段,需要评估其对数仓的影响,费时费力,然后在做方案。二、问题分析: 数据源长途跋涉,经过大量的处理和组件来传递,呈现在业务用户面前,对数据进行回溯其实很难。元数据回溯在有效决策、策略制定
Java获取Oracle存储过程返回的Cursor
Java获取Oracle存储过程返回的Cursor,使用odbc6
解决Hive动态分区小文件过多问题
一、问题描述 为了支撑相应的业务需求,本次生产环境通过Hive SQL来完成动态插入分区表数据的脚本开发。但是,动态分区的插入往往会伴随产生大量的小文件的发生。而小文件产生过多的影响主要分为以下两种情况: (1) 从Hive的角度看,小文件会开很多map,一个map开一个JVM去执行,所以这些任务的初始化,启动,执行会浪费大量的资源,严重影响性能。 (2)在HDFS中,每个小文件对象约占150byte,如果小文件过多会占用大量内存。这样NameNode内存容量严重制约了集群的扩展。 所以,我们必须要解决上
oracle types.cursortype,深入解析Cursor和绑定变量
如下是我就这次演讲的内容做的一点概括,里面也包含了我回答一些朋友的问题的邮件内容:里的cursor分为两种:一种是shared cursor,一种是session cursor。所谓的shared cursor就是指缓存在library cache里的一种library cache object,说白了就是指缓存在library cache里的sql和匿名pl/sql。它们是缓存在library ...
Hive SQL 优化
要想做好hive优化,首先要理解MR过程,HiveSQL转换为MR的过程,以及Hive表的分区分桶机制。 本质上的优化是,减少读,避免shuffle 和 增加并发度。 优化的手段: 跳过不必要的读 减少Shuffle 读延迟问题 数据倾斜 Partition、Bucket 使用 Skew(hive对声明了Skew的列会单独使用文件存储,并且在资源分配上有优待) MapJoin(Broadcast Join),避免ReduceJoin 增加热数据备份数 对于倾斜部分单独拿出来,做Map Joi
Hive SQL转化为MapReduce的过程
编译 SQL 的任务是在上节中介绍的 COMPILER(编译器组件)中完成的。Hive将SQL转化为MapReduce任务,整个编译过程分为六个阶段: 词法、语法解析: Antlr 定义 SQL 的语法规则,完成 SQL 词法,语法解析,将 SQL 转化为抽象语法树 AST Tree Antlr是一种语言识别的工具,可以用来构造领域语言。使用Antlr构造特定的语言只需要编写一个语法文件,定义词法和语法替换规则即可,Antlr完成了词法分析、语法分析、语义分析、中间代码生成的过程。 语义解析:
Oracle Cursor
Oracle系列:Cursor1,什么是游标? ①从表中检索出结果集,从中每次指向一条记录进行交互的机制。 ②关系数据库中的操作是在完整的行集合上执行的。 由 SELECT 语句返回的行集合包括满足该语句的 WHERE 子句所列条件的所有行。由该语句返回完整的行集合叫做结果集。 应用程序,尤其是互动和在线应用程序,把完整的结果集作为一个单元处理并不总是有效的。 这些应
Hive小文件合并
作者:振鹭。
Oracle cursor也可以传入参数
Oracle cursor需要传入参数的时候,首先得在定义游标的时候设置参数,例如 curProduct(n_tem_game_id number) 这时在打开游标的时候就可以传入对应的游标了,例如: open curProduct(1); 转载于:https://www.cnblogs.com/Vicky01200059/archive/2013/03/20/...
Hive SQL转化为MapReduce执行计划深度解析
目录 1. MapReduce实现基本SQL操作的原理 1.1 Join的实现原理 1.2 Group By的实现原理 1.3 Distinct的实现原理 2. SQL转化为MapReduce的过程 2.1 Phase1 SQL词法,语法解析 2.2 Phase2 SQL基本组成单元QueryBlock 2.3 Phase3 逻辑操作符Operator和逻辑操作树Operator...
数仓中全量数据和增量数据的合并方案
两张表的字段都一样 base:全量表 log:增量表(包括新增和修改的数据) 1. **** select * from base a where 0=(select count(1) from log b where a.id=b.id) union all select * from log 先查出base表有但log表没有的数据,再查出增量log的数据,两份数据合并即可 2.开窗函数 ...
java设置游标输出参数_JAVA调用存储过程输出参数为游标
CREATE OR REPLACE PACKAGE PR_EXPORT AS--定义数据类型type my_ref_cursor is ref cursor;PROCEDURE P_PR_(ret_cursor out sys_refcursor);END PR_EXPORT;CREATE OR REPLACE PACKAGE BODY PR_EXPORT ASPROCEDURE P_PR_(re...
hive sql 常用技巧
1.多行合并 多行合并常用于做区间统计,通过定义一定的金额区级,将上亿的记录降维为不同区间内总数。概括来说就是多映射到一。 典型场景: 基于用户交易天流水,计算每天不同金额段的金额笔数。 如用户的天交易流水表结构如上,需要计算出交易额在0-100,100-200,200-300,大于300几个区级的笔数, CREATE VIEW t_deal_tmp_view_1 AS SELECT CASE WHEN rcv_amount <= 100 THEN 1
oracle 存储过程 ref cursor,oracle 存储过程及 REF CURSOR 的使用
oracle 存储过程及 REF CURSOR 的使用基本使用方法及示例1, 基本结构:CREATE OR REPLACE PROCEDURE 存储过程名字(参数1IN NUMBER,参数2IN NUMBER)AS变量 1 INTEGER :=0;变量 2 DATE;BEGINEND 存储过程名字2, 无参形式的 procedure:-- 无参 procedurecreateorreplace p...
Hive系列 (十):Hive调优
Hive优化详细解释
Hive性能优化总结
Hive优化1.架构优化执行引擎优化器分区表分桶表文件格式数据压缩2.参数优化本地模式严格模式JVM重用并行执行推测执行合并小文件Fetch模式3.SQL优化列裁剪和分布裁剪sort by 代替 order bygroup by 代替 count(distinct)group by配置调整join基础优化处理空值或无意义值单独处理倾斜key调整map数调整reduce数4.优化小结 1.架构优化 影响Hive效率的因素:数据倾斜,数据冗余,Job或I/O过多,MapReduce分配不合
【Hive-小文件合并】Hive外部分区表利用Insert overwrite的暴力方式进行小文件合并
【代码】【Hive-小文件合并】Hive外部分区表利用Insert overwrite的暴力方式进行小文件合并。这里我们直接用实例来讲解,Hive外部分区表有单分区多分区的不同情况,这里我们针对不同情况进行不同的方式处理。
Hive 调优总结,让 Hive 调优想法不再碎片化
根据 MapReduce 运行全流程,对每个环节进行调优 MapReduce 运行流程图 MapReduce 运行流程关键环节及相关参数 文件输入:对文件进行切片,可设置切片大小,可设置是否合并小文件 Map:Map 数量 = 输入文件切片数量 Map 文件输出:是否合并设置,合并为多大,什么情况下会合并 Reduce: hive 自动计算 reduce 个数 或者 显式指定 reduce 个数 Reduce 文件输出:是否合并,合并为多大,什么情况下合并 最终文件压缩:job 之间
4万+



被折叠的 条评论
为什么被折叠?



