您的位置:首页 > 编程语言 > Java开发

pl/sql 有返回值的存储过程 java调用pl/sql过程 实例

2013-10-16 21:09 477 查看
问题:编写一个过程,可以输入雇员的编号,返回雇员的姓名

--有返回值的存储过程,有输入输出的存储过程

create procedure sp_pro8(spNO in number,spName out varchar2)

is

begin

select ename into spName from emp where empno=spNO;

end;

java调用的方法:

package com.sw;

import java.sql.*;

public class Test2 {
/*
* 有返回值的过程实例
*/
public static void main(String[] args) {

//变量
Connection conn = null;
CallableStatement cs = null;
try {
//声明驱动
Class.forName("oracle.jdbc.driver.OracleDriver");
//得到链接
conn = DriverManager
.getConnection("jdbc:oracle:thin:@127.0.0.1:1521:orcl",
"scott","Oracle1");
//创建CallableStatement,调用过程必须使用
cs = conn.prepareCall("{call sp_pro8(?,?)}");
//给?赋值
cs.setInt(1, 7788);
cs.registerOutParameter(2, oracle.jdbc.OracleTypes.VARCHAR);
//执行
cs.execute();
//取出返回值
String name = cs.getString(2);
System.out.println("7788的名字是:"+name);

} catch (Exception e) {
e.printStackTrace();
}finally{
//关闭资源
try {
cs.close();
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐