java调用存储过程代码,完整的JAVA调用存储过程的代码,请给的详细,必解贴

求一个完整的JAVA调用存储过程的代码,请给的详细,急,必解贴

下面是个存储过程,测试正常能用,想求一个根据这个存储过程,用JAVA做的调用代码。

请给出详细完整代码,不要只是代码片段,也不要说去网上找。小弟初学,想求一个调用这个存储过程java代码用来方便学习。谢谢,急,必解贴。

这个存储过程是输入两个值,根据值查询后得到一些输出值,JAVA代码要如何调用这个存储过程,如何得到并使用那些输出的值?请一定是完整的代码,谢

create or replace procedure SH_VEH_CX(

vhpzl IN  varchar2,

vhphm IN  varchar2,

vRES  out varchar2,

VCLSBDH out varchar2,

VFDJH   out varchar2,

VCLLX   out varchar2,

VCSYS   out varchar2,

Vsyxz   out varchar2,

VSFZMHM out varchar2,

VSYR   out varchar2,

Vsyq   out varchar2,

Vccdjrq  out date,

Vyxqz out date,

Vqzbfqz out date,

Vzt   out varchar2,

Vsjhm   out varchar2

)

IS

rowcount  number;

begin

if length(vHPHM)<=5 then

vRES  := 0;

return;

END IF;

select

CLSBDH,

FDJH,

CLLX,

CSYS,

syxz,

SFZMHM,

SYR,

syq,

ccdjrq,

yxqz,

qzbfqz,

zt,

sjhm

INTO

vCLSBDH,

vFDJH,

vCLLX,

vCSYS,

vsyxz,

vSFZMHM,

vSYR,

vsyq,

vccdjrq,

vyxqz,

vqzbfqz,

vzt,

vsjhm

from jx_VEHICLE

where  HPHM=vHPHM AND HPZL=VHPZL and rownum=1;

rowcount := sql%rowcount;

if rowcount=1 then

vRES  := 1;

else

vRES  := 0;

end if;

exception

when OTHERS then

vRES  := 0;

end SH_VEH_CX;

存储

java

sql

分享到:

------解决方案--------------------

public static void main(String[] args) {

Test test = new Test();

String str1="a";

String str2="b";

String result = test.select(str1, str2);

//result算是输出值么?放到哪里?

}

//这里就是根据输入值进行sql查询的过程

public String select(String str1,String str2){

return "";

}

------解决方案--------------------

引用:你好,你这也没根据我发的存储过程来JAVA啊,你这要JAVA做个过程运行功能吧,没调用存储过程呀

Quote: 引用:ublic static void main(String[] args) {

Test test = new Test();

String str1="a";

String str2="b";

String result = test.select(str1, str2);

//result算是输出值么?放到哪里?

}

//这里就是根据输入值进行sql查询的过程

public String select(String str1,String str2){

return "";

}

我就是不明白你存储过程是指的是什么。。。才发的这个

是把数据放到数据库?

还是持久化到普通的txt文件当中?

------解决方案--------------------

//调用存储过程的格式("{ call HYQ.TESTA(?,?) }")

callableStatement = connection.prepareCall("{ call SH_VEH_CX(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?) }");

callableStatement.setString(1, "vhpzl");//输入参数

callableStatement.setString(2, "vhphm");

callableStatement.registerOutParameter(3, Types.VARCHAR);//输出参数

callableStatement.registerOutParameter(4, Types.VARCHAR);

callableStatement.registerOutParameter(5, Types.VARCHAR);

//......

callableStatement.registerOutParameter(12, Types.DATE);

callableStatement.registerOutParameter(13, Types.DATE);

callableStatement.registerOutParameter(14, Types.DATE);

callableStatement.registerOutParameter(15, Types.VARCHAR);

callableStatement.registerOutParameter(16, Types.VARCHAR);

callableStatement.execute();//执行存储过程

String vRES = callableStatement.getString(3);//获取输出参数

String VCLSBDH = callableStatement.getString(4);

String VFDJH = callableStatement.getString(5);

//......

String Vccdjrq = callableStatement.getString(12);

String Vyxqz = callableStatement.getString(13);

String Vqzbfqz = callableStatement.getString(14);

String Vzt = callableStatement.getString(15);

String Vsjhm = callableStatement.getString(16);

自己在加工一下吧

------解决方案--------------------

你的数据库什么的一些信息我不知道所以补不全额

public static void main(String[] args) throws Exception {

Class.forName("oracle.jdbc.driver.OracleDriver");

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值