儲存過程 在java語言中呼叫儲存過程

2021-07-10 15:43:44 字數 2185 閱讀 5189

首先一定要連線資料庫啊  

private

static connection conn;

static catch (classnotfoundexception e) catch (sqlexception e)

} 例項一:

【 create or replace procedure selectemp(emp_no in number,ename out varchar2,job out varchar2,sal out number,deptno out number) is

begin

select ename,job,sal,deptno into ename,job,sal,deptno from emp where empno=emp_no;

end selectemp;

】 //呼叫儲存過程

public

static

void

procedure() throws sqlexception");

//從1開始

int index = 1;

//為佔位符賦值

cas.setint(index++, 7369);//賦值的是輸入引數

//輸出引數

cas.registeroutparameter(index++, oracle.jdbc.oracletypes.varchar);

cas.registeroutparameter(index++, oracle.jdbc.oracletypes.varchar);

cas.registeroutparameter(index++, oracle.jdbc.oracletypes.number);

cas.registeroutparameter(index++, oracle.jdbc.oracletypes.number);

//根據傳遞的引數值執行操作 如果第乙個結果是 resultset 物件,則返回 true;如果第乙個結果是更新計數或者沒有結果,則返回 false

boolean flag=cas.execute();

system.out.println(flag);

if(!flag)

} 例項二:

【 通過包宣告乙個儲存過程

create or replace package emppackage is

type empcursor is

ref cursor;

procedure selectemps(emplist out empcursor);

end emppackage;

包體:

create or replace package body emppackage is

procedure selectemps(emplist out empcursor) is

begin

open emplist for

select * from emp;

end;

end emppackage;

】 public

static

void

testprocedure() throws sqlexception");

//從1開始

int index = 1;

//為佔位符賦值

cas.registeroutparameter(index++, oracle.jdbc.oracletypes.cursor);

//根據傳遞的引數值執行操作 返回false代表裡面什麼也沒有,返回true代表返回的是resultset結果集

boolean flag=cas.execute();

system.out.println(flag);

//oraclecallablestatement強制造型為oracle中的儲存過程的物件

//呼叫裡邊的getcursor方法 返回的是resultset結果集

resultset rs = ((oraclecallablestatement)cas).getcursor(1);

while(rs.next())

}

java呼叫儲存過程,儲存過程在java中用法

先查出一條資料,更新這條資料,只貼呼叫過程的 只有傳參沒有返回 string call 呼叫語句 callablestatement proc pagedbconnection.getconnection preparecall call 呼叫儲存過程 這個儲存過程無返回值 需要注意的是儲存過程的字...

java呼叫儲存過程

什麼是儲存過程?儲存過程是指儲存在資料庫並在資料庫端執行的程式。儲存過程是為嵌入式 sql所設計 如何呼叫儲存過程?try proc.setstring 1,poetname proc.setint 2,age cs.execute catch sqlexception e 傳給preparecal...

java呼叫儲存過程

什麼是儲存過程?儲存過程是指儲存在資料庫並在資料庫端執行的程式。儲存過程是為嵌入式sql所設計 如何呼叫儲存過程?try proc.setstring 1,poetname proc.setint 2,age cs.execute catch sqlexception e 傳給preparecall...