首先一定要連線資料庫啊
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...