先用prepareStatement,参数是你存储过程名(?,?,?,?,?,?)
让后setString或其他数据类型方法
最后调用executeUpdate
要获得返回值,你就不能用标准的java sql类,必须用oracle扩展后的sql类,具体看oracle jdbc driver的文档吧
将dno以拼串的形式拼接到字符串中。
create or replace procedure proc1
(dno in number)
is
s varchar2(2000);
begin
s:='create table is_table as
(select e.ename name1,e.job,m.ename name2
from emp e,emp m
where e.mgr=m.empno and e.deptno='||dno||')';
execute immediate s;
end proc1;
where e.mgr=m.empno and deptno=dno )';
改成
where e.mgr=m.empno and deptno=‘||to_char(dno);