最近在看韩顺平讲解的oracle
一样的代码
他可以成功,但是我使用的时候报错
网上有人说可能是驱动不匹配
最好什么版本的oracl用对应的驱动
我也不知道我的jdbc驱动是什么版本视频链接http://v.youku.com/v_playlist/f4189118o1p28.html
在40分钟处 往后走是这个例子
使用的表是scott用户中的emp表
代码在二楼贴出
错误如下图
一样的代码
他可以成功,但是我使用的时候报错
网上有人说可能是驱动不匹配
最好什么版本的oracl用对应的驱动
我也不知道我的jdbc驱动是什么版本视频链接http://v.youku.com/v_playlist/f4189118o1p28.html
在40分钟处 往后走是这个例子
使用的表是scott用户中的emp表
代码在二楼贴出
错误如下图
--创建一个包,在该包中,我定游标类型 test_cursor
create or replace package testpackage as
type test_cursor is ref cursor;
end testpackage;
--创建过程
create or replace procedure sp_pro14
(spNo in number,p_cursor out testpackage.test_cursor) is
begin
open p_cursor for select * from emp where deptno=spNo;
end;
public class Test2 { public static void main(String[] args) {
// TODO Auto-generated method stub
try{ Class.forName("oracle.jdbc.driver.OracleDriver");
Connection conn=DriverManager.getConnection("jdbc:oracle:thin:@127.0.0.1:1521:ORCL","SCOTT","m123");
CallableStatement cs=conn.prepareCall("{call sp_pro14(?,?)}");
//第三种 游标方式
cs.setInt(1, 20);
cs.registerOutParameter(2, oracle.jdbc.OracleTypes.CURSOR); cs.execute();
ResultSet rs= (ResultSet)cs.getObject(2);
while(rs.next())
{
System.out.println(rs.getInt(1)+" "+rs.getString(2));
}
conn.close();
cs.close();
}catch(Exception e){e.printStackTrace();} }}
%ORACLE_HOME%\jdbc\lib\classes12.jar
qq 35320766邮箱谢谢