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