导航:首页 > 编程语言 > java调用oracle存储过程数据集

java调用oracle存储过程数据集

发布时间:2024-09-19 13:38:55

Ⅰ oracle存储过程分页 java调用时候出现 无法转换为内部表示 什么问题

也没什么大问题,就是oracle的函数你用错了
to_char(参数,格式),比如to_char(1234,'0000'),to_char(sysdate,'YYYYMMDD')等,
to_number(参数,格式),比如to_number(9999,'$9999.99'),to_number(99.99,'99')等

Ⅱ java如何获取oracle存储过程里的dbms_output.put_line()内容; 现在不方便改成游标。。

你的意思是不是要获取到“当前用户:user_id”这个的内容,如果是,两个方式可以解决:
1.通过存版储过程的出参,将“当前权用户:user_id”连接串返回;
比如:
假设你的过程叫,prc_test,在参数列表中增加出参。
create or replace procere prc_test(入参 in 类型, 出参 out 类型) is
begin
-- 逻辑实现
end;
出参就是你要把内容放进去,用来传值的变量。
2.在过程中保存一张临时表,然后在java中查出这个临时表中保存的数据。
定义临时表table_temp
在过程中
insert into table_temp(msg) values ('当前用户:' || user_id);

Ⅲ 如何在ORACLE中使用JAVA存储过程

比如下面写的是Oracle的一个存储过程:
create or replace procere queryempinfo(eno in number,
pename out varchar2,
psal out number,
pjob out varchar2)
as
begin
--得到该员工的姓名 月薪和职位
select ename, sal, job into pename, psal, pjob from emp where empno = eno;
end;

Java调用Oracle的存储过程
try {
Class.forName(driverName);
conn = DriverManager.getConnection(url, username, password);
stat = conn.prepareCall(sql);

// 一个输入参数和三个输出参数
stat.setInt(1, 7566);
stat.registerOutParameter(2, OracleTypes.VARCHAR);
stat.registerOutParameter(3, OracleTypes.NUMBER);
stat.registerOutParameter(4, OracleTypes.VARCHAR);
stat.execute();

String name = stat.getString(2);
int sal = stat.getInt(3);
String job = stat.getString(4);

System.out.println("name: " + name + ", sal: " + sal + ", job: " + job);

} catch (Exception e) {
e.printStackTrace();
} finally {
close(conn, stat, rs);
}

Ⅳ oracle 存储过程返回结果集怎么实现用java如何调用这个存储过程比如表scott下的emp表

1:首先你需要创建一个包,并定义你返回的游标的类型、存储过程

create or replace package TEST_PKG is

type cur_emp is REF CURSOR;

procere test_proc (emps out cur_emp);

end TEST_PKG;

2:然后你再创建包体

create or replace package body TEST_PKG is

procere test_proc (emps out cur_emp)
as
begin
open emps for select * from emp;
end test_proc;
end TEST_PKG ;

3,通过JAVA调用

cstmt = conn.prepareCall("{call TEST_PKG .test_proc (?)}");
cstmt.registerOutParameter(1, OracleTypes.CURSOR);
cstmt.execute();

//获得结果集
rs = (ResultSet)cstmt.getObject(4);
while(rs.next()){......}

注意:游标类型需要你在连接未关闭之前进行本地持久化,不然连接关闭了就无法解析了哦^-^,如果还不懂可以联系我!

阅读全文

与java调用oracle存储过程数据集相关的资料

热点内容
java编辑word文件 浏览:149
类似scihub的网站有哪些 浏览:398
ios哪里找小众app 浏览:377
毒霸新闻弹窗是哪个文件 浏览:331
雨林木win10 浏览:881
写好的代码怎么编程小程序 浏览:945
改文件属性软件 浏览:917
linux网卡重启新命令 浏览:216
win10升级工具下 浏览:935
电脑qq怎么传文件到手机qq 浏览:417
被360隔离的文件在哪个文件夹 浏览:971
骷髅教程图 浏览:954
ps淘宝女包修图教程 浏览:568
55公里app 浏览:556
欠费多少充多少为啥还用不了数据 浏览:607
苹果7如何使用万能钥匙 浏览:254
微信文件传送电脑 浏览:600
什么app可以解压百度云rar 浏览:627
苹果6sp换壳 浏览:956
海盗船k70rgb灯光配置文件 浏览:336

友情链接