以前用的是Statement 和 PreparedStatement
調用存儲過程就用到
CallableStatement cstmt =conn.prepareCall("call p(?,?,?,?)");
聲明 一個叫p的存儲過程,需要4個參數 其中1,2為輸入參數
3輸出參數,4為輸入輸出參數(在sqlserver里沒有這樣的參數)
是輸出參數的 我們在程序里要說明一下如:
cstmt.registerOutParameter(3,Types.INTEGER)
表明這個是第3個問號上面的,切類型是int 型號的
cstmt.cstmt.registerOutParameter(4,Types.INTEGER)
輸入輸出參數也必須說明
cstmt.setInt(1,3);
cstmt.setInt(2,3);
cstmt.setInt(4,3);? 把3個輸入參數給值;
cstmt.execute();執行存儲過程。
System.out.println(cstmt.getInt(3));
System.out.println(cstmt.getInt(4));
現在就可以用cstmt.get方法來取值了
最后cstmt.close要關閉