欢迎来到天天文库
浏览记录
ID:50676556
大小:35.18 KB
页数:9页
时间:2020-03-13
《用java调用oracle存储过程总结.docx》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、用java调用oracle存储过程总结分类:PL/SQL系列2009-09-2415:08253人阅读评论(0)收藏举报声明:以下的例子不一定正确,只是为了演示大概的流程。 一:无返回值的存储过程存储过程为:CREATEORREPLACEPROCEDURETESTA(PARA1INVARCHAR2,PARA2INVARCHAR2)ASBEGININSERTINTOHYQ.B_ID(I_ID,I_NAME)VALUES(PARA1,PARA2);ENDTESTA;然后呢,在java里调用时就用下面的代码:packagecom.hyq.src; importjava.sql.*;importja
2、va.sql.ResultSet; publicclassTestProcedureOne{publicTestProcedureOne(){}publicstaticvoidmain(String[]args){Stringdriver="oracle.jdbc.driver.OracleDriver";StringstrUrl="jdbc:oracle:thin:@127.0.0.1:1521:hyq";Statementstmt=null;ResultSetrs=null;Connectionconn=null;CallableStatementcstmt=null; try{Clas
3、s.forName(driver);conn=DriverManager.getConnection(strUrl,"hyq","hyq");CallableStatementproc=null;proc=conn.prepareCall("{callHYQ.TESTA(?,?)}");proc.setString(1,"100");proc.setString(2,"TestOne");proc.execute();}catch(SQLExceptionex2){ex2.printStackTrace();}catch(Exceptionex2){ex2.printStackTrace()
4、;}finally{try{if(rs!=null){rs.close();if(stmt!=null){stmt.close();}if(conn!=null){conn.close();}}}catch(SQLExceptionex1){}}}} 二:有返回值的存储过程(非列表)当然了,这就先要求要建张表TESTTB,里面两个字段(I_ID,I_NAME)。 存储过程为:CREATEORREPLACEPROCEDURETESTB(PARA1INVARCHAR2,PARA2OUTVARCHAR2)ASBEGINSELECTINTOPARA2FROMTESTTBWHEREI_ID=PARA
5、1;ENDTESTB;在java里调用时就用下面的代码:packagecom.hyq.src; publicclassTestProcedureTWO{publicTestProcedureTWO(){}publicstaticvoidmain(String[]args){Stringdriver="oracle.jdbc.driver.OracleDriver";StringstrUrl="jdbc:oracle:thin:@127.0.0.1:1521:hyq";Statementstmt=null;ResultSetrs=null;Connectionconn=null;try{Cla
6、ss.forName(driver);conn=DriverManager.getConnection(strUrl,"hyq","hyq");CallableStatementproc=null;proc=conn.prepareCall("{callHYQ.TESTB(?,?)}");proc.setString(1,"100");proc.registerOutParameter(2,Types.VARCHAR);proc.execute();StringtestPrint=proc.getString(2);System.out.println("=testPrint=is="+te
7、stPrint);}catch(SQLExceptionex2){ex2.printStackTrace();}catch(Exceptionex2){ex2.printStackTrace();}finally{try{if(rs!=null){rs.close();if(stmt!=null){stmt.close();}if(conn!=null){conn.close();}}}catch(SQLEx
此文档下载收益归作者所有