JDBC 調用存儲過程
調用無參的存儲過程
//存儲過程調用 SQL 語句必須用{call 過程名稱()}
String sql = "{call pro_insert()}";
// 獲取 jdbc 連接對象
conn = DriverManager.getConnection(url,user,password);
//過程的調用使用 CallableStatement 對象
CallableStatement stmt = conn.prepareCall(sql);
// 執行過程
stmt.execute();
調用帶輸入參數的存儲過程
//通過?號佔位符
String sql = "{call mypro(?,?)}";
conn = DriverManager.getConnection(url,user,password);
CallableStatement stmt = conn.prepareCall(sql);
//設置輸入參數
stmt.setInt(1,7788);
stmt.setInt(2,3000);
stmt.execute();
調用輸入輸出參數的存儲過程
// 帶入參和出參過程的形式 query_sal(v_id in number,v_sal out number)
String sql = "{call query_sal(?,?)}";
CallableStatement stmt = conn.prepareCall(sql);
// 入參賦值
stmt.setInt(1, 7369);
//向過程註冊一個 int 類型的輸出參數
stmt.registerOutParameter(2,Types.INTEGER);
stmt.execute();
//通過 stmt 對象取出輸出參數
int sal = stmt.getInt(2);
System.out.println(sal);
更多相關知識,請戳主頁!