菜鳥筆記:java呼叫sqlserver儲存過程
阿新 • • 發佈:2019-01-31
首先建立一個儲存過程:
CREATE proc HR_PER_TARGET_SCORECHECK
@PLANID varchar(20),
@Obj_A0100 varchar(20),
@Body_A0100 varchar(20),
@Allow varchar(20) output
as
sql語句;
GO
之後再用java呼叫儲存過程
CallableStatement cstmt = null; // 儲存過程 try { String sqlCall = "{call HR_PER_TARGET_SCORECHECK (?,?,?,?)}"; cstmt = this.frameconn.prepareCall(sqlCall); cstmt.setInt(1, Integer.parseInt(planid));// 第一個引數為計劃號 cstmt.setString(2, object_id);// 第二個引數為考核物件人員編碼 cstmt.setInt(3, Integer.parseInt(this.userView.getA0100()));// 第三個引數為評分人人員編碼 cstmt.registerOutParameter(4, Types.VARCHAR);//設定第四個引數為輸出引數 //執行儲存過程 cstmt.execute(); String Allow = cstmt.getString(4); if(Allow.equals("0")){ info = Allow; } } catch (Exception e) { e.printStackTrace(); } finally { try { if (cstmt != null) cstmt.close(); } catch (Exception e) { e.printStackTrace(); } }