你是没有弄清楚它的方法说明,就像上一楼说的,你没有弄清楚API
如果你要判断是否新增或作插入等 *** 作是否成功,execute之后,你应该再调用
int tmp=csgetUpdateCount()的方法(方法名应该没记错,就是返回你cs上一次 *** 作时候改变的记录的数目),之后再return tmp>0即可
packagecomtest; importjavasql; importjavaio; importjavasql; publicclassTestProcB { publicTestProcB(){ } publicstaticvoidmain(String[]args) { Connectionconn=null; </SPAN> CallableStatementproc=null; </SPAN> try{ ClassforName("oraclejdbcdriverOracleDriver"); conn=DriverManagergetConnection("jdbc:oracle:thin:@127001:1521:test","test","test"); </SPAN> proc=connprepareCall("{calltest_b(,)}"); </SPAN> procsetString(1,"1001"); procregisterOutParameter(2,TypesVARCHAR); //针对存储过程的输出参数procexecute(); Systemoutprintln("Outputis:"+procgetString(2)); }catch(Exceptione){ eprintStackTrace(); }finally{ try{ if(null!=proc){ procclose(); } if(null!=conn){ connclose(); } }catch(Exceptionex){ } } } }
以上就是关于用java调用存储过程后数据库里可以查到记录,但是execute返回的确实false而且返回值的都是-1全部的内容,包括:用java调用存储过程后数据库里可以查到记录,但是execute返回的确实false而且返回值的都是-1、java连接数据怎样获得存储过程输出的参数、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)