Java 调用Oracle 存储过程

Java中通过jdbc调用oracle存储过程 Java调用Oracle存储过程步骤主要分为三类: (1)编写Oracle存储过程 (2)编写数据库获取连接工具类 (3)编写简单应用调用存储过程 1、Oracle中的存储过程程序 1.在Oracle SQL Developer中创建存储过程 在scott数据库用户中新建一个存储过程(查询某个员工姓名 月薪和职位): create or replace procedure query... 阅读详情

调用带返回结果集存储过程:

/**
	 * 调用带返回结果集存储过程
	 * 
	 * @param procName
	 * @param param
	 * @return
	 * @throws SQLException
	 * @throws NoFreeConnectionException
	 */
	public DataSource execuceProc(String procName, String[] param) throws SQLException, NoFreeConnectionException {
		Connection con = null;
		CallableStatement getResults = null;
		ResultSet rs = null;

		StringBuffer build = new StringBuffer();
		build.append("{ call ").append(procName);

		build.append("(");
		if (param != null && param.length > 0) {
			for (int i = 0; i < param.length; i++) {
				build.append("'").append(param[i]).append("',");
			}
		}
		build.append("?) }");

		try {
			con = ConnectDBBean.getConnection(ReadWriteDBPool.readPool);
			getResults = con.prepareCall(build.toString(), ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);
			getResults.registerOutParameter(1, OracleTypes.CURSOR);
			getResults.execute();
			rs = (ResultSet) getResults.getObject(1);
			this.rsToDataSource(rs);
		} finally {
			try {
				if (rs != null) {
					rs.close();
				}
				if (getResults != null) {
					getResults.close();
				}
			} catch (SQLException e) {
				log.error(e);
			}

			ConnectDBBean.closeConnection(ReadWriteDBPool.readPool, con);
		}

		return new DataSourceType();
	}

 

调用带参存储过程:

/**
	 * 调用带参存储过程
	 * 
	 * @param procName
	 * @param param
	 * @return
	 * @throws SQLException
	 * @throws NoFreeConnectionException
	 */
	@SuppressWarnings("unchecked")
	public static void execuceProc(String procName, List param) throws SQLException, NoFreeConnectionException {
		Connection con = null;
		CallableStatement getResults = null;

		StringBuffer build = new StringBuffer();
		build.append("{ call ").append(procName);

		build.append("(");
		if (param != null && param.size() > 0) {
			for (int i = 0; i < param.size(); i++) {
				if (i > 0)
					build.append(",");
				build.append("'").append(param.get(i)).append("'");
			}
		}
		build.append(") }");
		try {
			con = ConnectDBBean.getConnection(ReadWriteDBPool.readPool);
			getResults = con.prepareCall(build.toString(), ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);
			getResults.execute();
		} finally {
			try {
				if (getResults != null) {
					getResults.close();
				}
			} catch (Exception e) {
				log.error(e);
			}
			ConnectDBBean.closeConnection(ReadWriteDBPool.readPool, con);
		}
	}


 

 

java调用oracle存储过程并得到结果集 jdk1.5 MyEclipse oracle11g 立即下载

相关推荐

FFmpeg硬件加速实战:VAAPI驱动配置全攻略(含NVIDIA/Intel避坑指南)

本文详细解析了在Linux环境下配置FFmpeg使用VAAPI接口实现硬件加速的完整流程。针对NVIDIA、Intel等主流显卡,提供了从驱动安装、环境变量设置到多显卡切换的实战指南,并重点解决了闭源驱动冲突、国产系统适配等常见问题,帮助用户有效提升视频处理性能。

weixin_29306011的博客 455

Java调用Oracle存储过程

 在一个网站上看到java调用存储过程的系统与大家分享一下!    创建需要的测试表:create table Test(tid varchar2(10),tname varchar2(10));  第一种情况:无返回值.      create or replace procedure test_a(param1 in varchar2,param2 in varchar2) a

追风破雨 727

window系统 dlib库安装

1. 安装visual studio 1.1. 安装vs2017或以上版本 1.2. 我们需要安装使用C++的桌面开发,且必须选上用于Cmake的Visual C++工具 1.3. 安装完成后,将D:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin 添加到环境变量PATH中 2 下载cmake文件,并添加环境变量 2.1 在c

@bangbang的博客 815

Java 调用Oracle存储过程

Java调用Oracle存储过程一: 先创建一张表,操作如下,我是从plsql里面创建的: [code="java"] -- Create table create table B_ID ( I_ID VARCHAR2(200), I_NAME VARCHAR2(200) ) tablespace USERS pctfree 10 initrans 1 ...

stevenbill的博客 198

LPDDR5 学习笔记01:功能概述

LPDDR5/LPDDR5X SDRAM设备采用8/16DQ通道架构,支持2Gb-32Gb容量。通过CK命令时钟和更快的WCK数据时钟协同工作,7个CA引脚传输控制信息,支持2:1或4:1的WCK:CK比例。设备提供BG/8B/16B三种存储模式选择,分别支持不同数据速率(最高8.533Gbps)和突发长度。采用0.5V VDDQ电源电压,实现高速双倍数据速率传输,并通过差分WCK时钟完成数据采样。读写采用突发访问机制,需先激活命令再执行读写操作。新型LPDDR5X仅支持BG和16B模式,优化了高速性能。

一只豌豆象的博客 2202

ESD防护设计宝典(十九):元器件选型宝典——共模电感

然而,这位“大师”的脾气也颇为古怪,若设计者不解其性、用之不当,它非但不能抑制噪声,反而会引入信号完整性恶化、电源压降等新问题,甚至让您的系统EMC性能“雪上加霜”,导致项目在测试阶段功亏一篑。本文将带您深入共模电感的内在世界,从本质解析到参数详解,从设计陷阱到实战选型,全方位领悟其平衡艺术,掌握其应用核心,规避那些足以让项目翻车的致命陷阱。:这是存在于电路板内部的“家贼”。共模电感实质上是一个四端器件,它通过磁场的“加法”与“减法”运算,巧妙地实现了对共模噪声的抑制,同时为差模信号大开绿灯。

m0_56451176的博客 421

【亲测】Java调用Oracle存储过程和存储函数

Java连接Oracle数据库存储过程和存储函数

欢迎你的到来,我们一起加油!!! 3677

【006】深入了解C++中的进制转换:二进制、八进制、十进制、十六进制

二进制:0~1,以0b开头,bitset< 8 >输出。八进制:0~7,以0开头,oct输出。十进制:0~9,以数字开头,cout默认输出十进制。十六进制:0 ~ 9和A ~ F,以0x开头,hex输出,不区分正负。n进制:0~n-1。C++ 中常见的数字进制有十进制、二进制、八进制、十六进制。从十进制转换到其他进制:二进制:使用除以 2 取余数的方法,将得到的余数倒序排列即为二进制。八进制:使用除以 8 取余数的方法,将得到的余数倒序排列即为八进制。

Lion_Long的博客 2612

java 调用 oracle存储过程_用java调用oracle存储过程总结

以前一直没有动存储过程是用来干嘛的,后来请教朋友才换为自己的理解方式,用自己通俗的语言来说,就是把sql语句换为一个过程,也可以说是一个方法,每次直接给参数调用就好,使用存储过程查询速度快,系统只编译一次,但是不好维护//1、call+包名+存储过程名(传入、传出值用?)String str="{call SMSBUSINESS.deleteZhZMember(?,?,?)}";//2、建立连接C...

weixin_29358053的博客 726

【机器学习概率统计】11 贝叶斯统计推断:最大后验

这一节,我们来介绍另外一种统计推断方法:贝叶斯统计推断方法。 1.回顾贝叶斯定理 首先,我们先来复习一下贝叶斯定理: p(Θ∣X)=p(X∣Θ)p(Θ)p(X)p(\Theta|X)=\frac{p(X|\Theta)p(\Theta)}{p(X)}p(Θ∣X)=p(X)p(X∣Θ)p(Θ)​ 在这个简简单单的式子当中,蕴含了我们要掌握的很多重要内容: 贝叶斯定理当中的四个概率表达式,他们都非常重要,在这一节的内容中将反复出现,我们来一一解析一下: p(Θ)p(\Theta)p(Θ):先验分布。 反映的是在

机器学习数学基础系列专栏 3271

基于YOLOv8的建筑材料分类系统:从数据集构建到UI界面实现

建筑材料分类数据集需要包含各种常见建筑材料的图像,并对每种材料进行标注。砖块(Brick)混凝土(Concrete)钢筋(Rebar)木材(Wood)瓷砖(Tile)玻璃(Glass)钢材(Steel)塑料(Plastic)石膏板(Drywall)绝缘材料(Insulation)如果没有找到合适的公开数据集,可以构建自己的数据集。使用智能手机或专业相机拍摄各种建筑材料的照片确保在不同光照条件、角度和背景下拍摄每类材料至少收集300-500张图像。

YOLO 489

用java调用oracle存储过程总结

用java调用oracle存储过程总结 //1、call+包名+存储过程名(传入、传出值用?)      String str="{call SMSBUSINESS.deleteZhZMember(?,?,?)}"; //2、建立连接  Connection conn=null;  conn=DriverManager.getConnection(); //3、使用java.sql.*类  Ca...

一只苟延残喘的卑微蝼蚁 4223

Vue/React动态页面爬取:不用Playwright也能抓全数据的3个JS逆向技巧(附Python代码)

Vue/React动态页面的爬取核心是“绕过渲染,直达数据”:90%的场景下,API接口或初始数据足以满足需求,Playwright等渲染工具只应作为“最后手段”(如无API、参数加密极复杂)。记住:爬虫的效率与“模拟真实浏览器的程度”成反比——越少模拟浏览器,效率越高。掌握JS逆向技巧,既能避开Playwright的性能坑,又能提升爬虫的抗反爬能力,这才是动态页面爬取的最优解。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 1598

java调用oracle存储过程_java调用oracle存储过程详解

之前给大家介绍了java代码调用存储过程,下面要给大家介绍的就是java当中调用oracle存储过程,一起来看看吧。首先来看一下项目结构:在数据库创建存储过程的脚本,假如,使用的是本地的oracle数据库,那么,就需要开启服务-OracleOraDb11g_home1TNSListener和OracleServiceORCL。实现:输入用户的工号,输出用户名字、薪水以及工作:createorr...

weixin_33785828的博客 2720

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

java oracle存储过程调用_Java调用Oracle存储过程详解

Java调用Oracle存储过程详解步骤:1、编写Oracle存储过程2、编写数据库获取连接工具类3、编写简单应用调用存储过程实现:1、Oracle存储过程:/*测试表*/create table test(id varchar2(32),name varchar2(32));/*存储过程 插入数据*/CREATE OR REPLACE PROCEDURE insert_procedure(PAR...

weixin_35837047的博客 349

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

Java 调用Oracle存储过程

Java 调用Oracle存储过程 创建存储过程 ## 没有返回值的存储过程--创建存储过程 create or replace procedure query_user (v_name varchar2) as v_count binary_integer :=0; begin   select count(*) into v_count fro...

Troub_cy的博客 675

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

Java 调用 Oracle 的存储过程

文章目录一、环境准备二、Oracle连接测试三、Java 调用存储过程四、Java 调用存储函数 一、环境准备 需要的 jar 包:ojdbc14.jar,ojdbc6.jar 对应的 pom 配置: <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <maven.compiler.source>1.8</mave

南淮北安的博客 2450

java调用存储过程 oracle_用java调用oracle存储过程总结

这段时间开始学习写存储过程,主要原因还是因为工作需要吧,本来以为很简单的,但几经挫折,豪气消磨殆尽,但总算搞通了,为了避免后来者少走弯路,特记述与此,同时亦对自己进行鼓励。一:无返回值的存储过程存储过程为:CREATE OR REPLACE PROCEDURE TESTA(PARA1 IN VARCHAR2,PARA2 IN VARCHAR2)ASBEGININSERT INTO HYQ.B_ID...

weixin_33036495的博客 388

oracle java调用存储过程_Java调用Oracle存储过程

一:无返回值的存储过程存储过程为:CREATE OR REPLACE PROCEDURE TESTA(PARA1 IN VARCHAR2,PARA2 IN VARCHAR2) ASBEGININSERT INTO HYQ.B_ID (I_ID,I_NAME) VALUES(PARA1, PARA2);END TESTA;然后呢,在java里调用时就用下面的代码:import java.sql.*...

weixin_30666407的博客 132

java调用存储过程 oracle_Java中通过jdbc调用oracle存储过程

Java调用Oracle存储过程步骤主要分为三类:(1)编写Oracle存储过程(2)编写数据库获取连接工具类(3)编写简单应用调用存储过程1、Oracle中的存储过程程序1.在Oracle SQL Developer中创建存储过程在scott数据库用户中新建一个存储过程(查询某个员工姓名 月薪和职位):create or replace procedure queryperson(empid i...

weixin_28990495的博客 446

java中调用存储过程(oracle)

最近写代码,老师叫我们练习下在java代码中调用存储过程来实现对数据库的操作。学习了几天,现在把学到的知识整理下。1.如果不要求返回结果集,就直接定义存储过程,然后在程序中调用就可以了,这个很简单,这里就不说了。 2.如果要求返回结果集,那么就要就定包,再在包体中定义存储过程,最后是在程序中调用包中的存储过程,其步骤如下:(1)创建包,这里我创建了一个名为OeCom的包,它包括ad

chengtianjun的专栏 629

java调用存储过程 oracle_用java 调用oracle存储过程总结

一:无返回值的存储过程存储过程为:CREATE OR REPLACE PROCEDURE TESTA(PARA1 IN VARCHAR2,PARA2 IN VARCHAR2) ASBEGININSERT INTO HYQ.B_ID (I_ID,I_NAME) VALUES (PARA1, PARA2);END TESTA;然后呢,在java里调用时就用下面的代码:packagecom.hyq.sr...

weixin_39955418的博客 182
上一篇: 小白新手专用Linux系统常用命令大全
下一篇: JSP和JSTL获取服务器参数
JavaAlpha
博客等级 码龄18年 910粉丝 511原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值