建立儲存過程和java呼叫儲存過程
阿新 • • 發佈:2019-01-29
建立儲存過程--get_jobname
create or replace procedure get_jobname(v_jobid in varchar2,v_jobname out varchar2)
as
begin
select job_name into v_jobname from schedule_job where job_id = v_jobid; --變數賦值
end get_jobname;
java呼叫儲存過程
con.commit();public static void main(String[] args) { Connection conn=JdbcTool.getConnByJdbc(); String pro_param="26D9542B27A8663CE0531480140ABFE4"; String procedure="{call get_jobname(?,?)}"; try { CallableStatement cs=conn.prepareCall(procedure); cs.setString(1, pro_param); cs.registerOutParameter(2, oracle.jdbc.OracleTypes.VARCHAR); cs.execute(); String outpara=(String) cs.getObject(2); System.out.println(outpara); }catch (Exception e) { e.printStackTrace(); }finally{ JdbcTool.closeConnection(conn); } }
cs.close(); //必須的程式碼,否則執行成功但是資料庫沒有記錄