-
Oracle使用存儲過程個人覺得還是有點麻煩的,一個不小心就出現什么參數錯誤,個人建議如果能少使用就少使用。這里我想用jdbc的方式給大家交流下我自己寫的一個比較簡單的存儲過程。至于用框架寫的我暫時還沒有研究出來。過幾天會補全給大家的。
1.先來寫一個帶有輸入和輸出參數的存儲過程
1.create or replace procedure xxx(
2. newfid In Number,
3. newfname Out Varchar
4.)
5.As
6.begin
7.Select fname Into newfname From m_student Where fid=newfid;
8.end; 這里需要注意varchar不能寫成varchar2,否則會出現輸入和輸出參數不匹配的異常
2.使用jdbc執行存儲過程
1.package org.lxh;
2.
3.import java.sql.CallableStatement;
4.import java.sql.Connection;
5.import java.sql.ResultSet;
6.import java.sql.SQLException;
7.
8.import Oracle.jdbc.OracleCallableStatement;
9.
10.public class TestUse {
11.
12. public static void main(String[] args) throws Exception {
13.
14. DBConnection con = new DBConnection();
15. Connection getConn = con.getConnection();
16. OracleCallableStatement cs = (OracleCallableStatement)getConn.prepareCall("{call xxx(newfid => :newfid,newfname => :newfname)}");
17. cs.setInt(1, 365);
18. cs.registerOutParameter(2, java.sql.Types.VARCHAR);
19.
20. cs.execute();
21.
22. String strAge = cs.getString(2);
23. System.out.println("fid是:" + strAge);
24.
25. getConn.close();
26.
27. }
28.
29.} 本文出自:億恩科技【www.endtimedelusion.com】
服務器租用/服務器托管中國五強!虛擬主機域名注冊頂級提供商!15年品質保障!--億恩科技[ENKJ.COM]
|