如何通过jdbc调用存储过程


Posted in 面试题 onApril 19, 2012
在java.sql.Connection类中的public CallableStatement prepareCall(String sql)方法调用存储过程。Sql为an SQL statement that may contain one or more ‘?’ parameter placeholders. Typically this statement is a JDBC function call escape string.,即调用存储过程语句
Example:
Stored procedures:
Create or replace procedure addMember(name in varchar2(50),sex in varchar2(50)) as
begin
insert into family f (f.name,f.sex) values (name,sex);
end addMember;
Java source code:
…………………………………get Connection
String procedure = “{call addMember(?,?)}”;
CallableStatement cstmt = conn.prepareCall(procedure);
cstmt.setString(1,”马锐”);
cstmt.serString(2,”男”);
cstmt.excute();
………..close connection

若是需要返回值,我们可以通过function实现。可用下面方法
Example:
Stored procedures:
Create or replace function viewMember return types.cursortype as
family_cursor types.cursortype;
begin
open family_cursor for select f.name,f.sex from family f
return family_cursor
end addMember;
Java source code:
…………………………………get Connection
String procedure =”begin :1:=viewMember;end;”;
CallableStatement cstmt = conn.prepareCall(procedure);
cstmt.registerOutParameter(1,OracleTypes.CURSOR);
cstmt.execute();
ResultSet rset = (ResultSet)cstmt.getObject(1);
while(rset.next())
System.out.println(rset.getString(1);
cstmt.close();
)
………..close connection

Tags in this post...

面试题 相关文章推荐
怎样声明接口
Sep 19 面试题
C语言基础笔试题
Apr 27 面试题
如何查询Oracle数据库中已经创建的索引
Oct 11 面试题
什么是三层交换,说说和路由的区别在那里
Sep 01 面试题
Linux如何命名文件--使用文件名时应注意
Jan 22 面试题
网上常见的一份Linux面试题(多项选择部分)
Sep 09 面试题
EJB发布WEB服务一般步骤
Oct 31 面试题
中间件的定义
Aug 09 面试题
送给程序员的20个Java集合面试问题
Aug 06 面试题
与UNIX有关的几个名词
Sep 17 面试题
J2EE是技术还是平台还是框架
Aug 14 面试题
德尔福集团DELPHI的笔试题
Feb 22 面试题
北京振戎融通Java面试题
Sep 03 #面试题
Java模拟试题
Nov 10 #面试题
Java如何支持I18N?
Oct 31 #面试题
Ejb技术面试题
Apr 29 #面试题
Java面试笔试题大全
Nov 23 #面试题
JSF界面控制层技术
Jun 17 #面试题
Java基础面试题
Nov 02 #面试题
You might like
福利彩票幸运号码自动生成器
2006/10/09 PHP
PHP simple_html_dom.php+正则 采集文章代码
2009/12/24 PHP
php 批量替换程序的具体实现代码
2013/10/04 PHP
使用php验证复选框有效性的示例
2013/11/13 PHP
PHP中ini_set与ini_get用法实例
2014/11/04 PHP
基于CI(CodeIgniter)框架实现购物车功能的方法
2018/04/09 PHP
javascript cookie操作类的实现代码小结附使用方法
2010/06/02 Javascript
jQuery插件原来如此简单 jQuery插件的机制及实战
2012/02/07 Javascript
Fixie.js 自动填充内容的插件
2012/06/28 Javascript
jQuery实现页面滚动时层智能浮动定位实例探讨
2013/03/29 Javascript
jQuery实现响应浏览器缩放大小并改变背景颜色
2014/10/31 Javascript
jQuery层动画定位滑动效果的方法
2015/04/30 Javascript
JS实现网页游戏中滑块响应鼠标点击移动效果
2015/10/19 Javascript
jquery实现简单文字提示效果
2015/12/02 Javascript
vue.js入门教程之计算属性
2016/09/01 Javascript
使用openSpeDiv方法实现Ecshop登录弹窗框效果
2017/03/13 Javascript
angularjs 缓存的使用详解
2018/03/19 Javascript
vue实现点击展开点击收起效果
2018/04/27 Javascript
Vue使用高德地图搭建实时公交应用功能(地图 + 附近站点+线路详情 + 输入提示+换乘详情)
2018/05/16 Javascript
layui表格数据复选框回显设置方法
2019/09/13 Javascript
vue中使用vue-pdf的方法详解
2020/09/05 Javascript
原生js实现贪吃蛇游戏
2020/10/26 Javascript
python计算最小优先级队列代码分享
2013/12/18 Python
Windows下安装python2.7及科学计算套装
2015/03/05 Python
Django数据库操作的实例(增删改查)
2017/09/04 Python
对Python w和w+权限的区别详解
2019/01/23 Python
利用python实现周期财务统计可视化
2019/08/25 Python
python实现按首字母分类查找功能
2019/10/31 Python
Python语法垃圾回收机制原理解析
2020/03/25 Python
Python3 selenium 实现QQ群接龙自动化功能
2020/04/17 Python
你正在寻找的CSS3 动画技术
2011/07/27 HTML / CSS
先进集体事迹材料
2014/02/17 职场文书
口才训练演讲稿范文
2014/09/16 职场文书
医院见习报告范文
2014/11/03 职场文书
2015年项目经理工作总结
2015/04/30 职场文书
win10+RTX3050ti+TensorFlow+cudn+cudnn配置深度学习环境的方法
2022/06/25 Servers