问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

oracle中怎么执行带有输出参数的存储过程,在程序中我知道怎么调用,_百度...

发布网友 发布时间:2022-04-23 08:07

我来回答

5个回答

懂视网 时间:2022-04-08 07:01

* * 执行返回一个输出参数,若干输入参数的存储过程 * 方法第一个参数为存储过程名称,第二个参数为存放输入参数的数组(按顺序存放),方法返回值为存储过程输出参数 */ public String execProcedureWithOutParam(final String procName,final String[] inParams){ String returnVal=(String)getJdbcTemplate().execute(new CallableStatementCreator() { public CallableStatement createCallableStatement(Connection con) throws SQLException { int procArgNum=inParams.length+1; String storedProc="{call "+procName+"("; for (int i = 0; i < procArgNum; i++) { if(i!=procArgNum-1){ storedProc+="?,"; }else { storedProc+="?"; } } storedProc+=")}"; CallableStatement cs=con.prepareCall(storedProc); for (int i = 1; i <=inParams.length; i++) { cs.setString(i, inParams[i-1]); } cs.registerOutParameter(inParams.length+1, java.sql.Types.VARCHAR); return cs; } },new CallableStatementCallback() { public Object doInCallableStatement(CallableStatement cs) throws SQLException, DataAccessException { cs.execute(); return cs.getString(inParams.length+1); } }); return returnVal; }

 

JdbcTemplate执行带输入参数和输出参数的存储过程

标签:

热心网友 时间:2022-04-08 04:09

1、新建一个存储过程(Procere)。

2、修改存储过程,这个存储过程有一个输入参数(pid)跟一个输出参数(name),即通过用户id查询用户名称并将名称返回。

3、调试存储过程,找到刚刚创建的存储过程右击并点击【test】选项。

4、在打开的窗口内修改id值并点击左上角的倒三角形图标开始调试。

5、按【CTRL+N】进行单步进入调试,【CTRL+O】单步调试,【CTRL+T】退出调试,也可以点击调试工具进行调试。

6、变量查看,在窗口下方可输入变量名称观察变量的变化情况。

7、调试完成后就可以检查调试结果。

热心网友 时间:2022-04-08 05:27

--存储过程的创建
set serveroutput on;
create or replace procere select_dept(
num_deptno in number,--定义in模式变量,要求输入部门编号
var_dname out dept.dname%type,--定义out模式变量,可以存储部门名称并输出
var_loc out dept.loc%type) is
begin
select dname,loc into var_dname,var_loc from dept
where deptno = num_deptno;--检索某个部门编号的部门信息
exception
when no_data_found then--若select语句无返回记录
dbms_output.put_line('该部门编号的不存在');--输出信息
end select_dept;
/
--存储过程的调用
--注意:含有输出参数的存储过程调用,需要先声明与out参数类型兼容的变量
set serveroutput on;
declare
var_dname dept.dname%type;
var_loc dept.loc%type;
begin
select_dept(10,var_dname,var_loc);
dbms_output.put_line(var_dname||'位于:'||var_loc);
end;
/

热心网友 时间:2022-04-08 07:01

下面说明在SQL DEVELOPER中的做法,右击存储结构的文件名,在菜单中选择RUN,会跳出一个叫RUN PL/SQL的页面,在下方写着PL/SQL BLOCK 的地方修改输入参数
spno =>spno 修改为spno =>真实的值
具体可以参看HELP中的Run/Debug/Profile PL/SQL

热心网友 时间:2022-04-08 08:53

SQL> create or replace procere sp_pro10
2 (spno in number,spname out varchar2) is
3 begin
4 select 'ename' into spname from al;
5 end;
6 /

过程已创建。

SQL> set serveroutput on
SQL> DECLARE
2 spno number;
3 spname varchar2(10);
4 BEGIN
5 sp_pro10 (spno, spname);
6
7 dbms_output.put_line(spname);
8 END;
9 /
ename

PL/SQL 过程已成功完成。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
智能化公交系统名词解释 发酵工程考研科目有哪些 激素脸怎么选择补水护肤品? 西安铁路局的辖区问题 人保车险积分也做什么 跟女友吵架了 想主动和好 不知道怎么开口 主动与女朋友和好,该怎么开口 复合怎么开口第一句简洁(但是觉得给不了对方想要的) 电汇结算是什么 什么是电汇结算 手机qq2013安装不上? 二个金税盘同一电脑使用专用发票开票软件行吗 如何结合教学工作开展科研工作总结 我要下手机QQ2013历史版本 什么是金税盘,金税盘用来干什么的 手机QQ2012与手机QQ2013哪个用的比较好? 金税盘开票系统怎么用 教育、教学及科研工作总结怎样写? 一个电脑是否可以用两套金税盘 qq2013手机版字体大小在哪设定??? 科研单位的个人年度总结报告怎么写 顺食天农庄的干煸豆角好不好吃 超写科研事业单位个人总结 一个金税盘能在两个电脑上用吗 怎么设置手机QQ2013在同一对话框每一条消息都有提示音? 在家里做干锅花豆角,怎样做才能保证豆角不夹生? 两个公司两个金税盘.能用同一个电脑上的开票软件吗 版本手机QQ2013的功能有什么 今天中午做的干煸豆角,大家觉得怎么样 手机QQ2013版本如何,性能咋样 博士怎样做科研(小结) 怎样安装手机qq2013到手机 增值税一般纳税人金税盘报税盘怎么使用 如何加强学科建设和科研工作总结 oracle怎么调用带参数的存储过程 金税盘报税盘怎么用 qq2013的版本特点 一台电脑的开票软件能支持几户的金税盘插用? oracle中怎么让带有输入参数的存储过程定时执行 2018医院科研工作总结 手机qq2013的用户体验 金税盘和报税盘分别有什么作用?各自的使用方法是什么?有没有大神可 如何执行oracle有参数的存储过程 如何编写科研课题年度工作总结 手机qq2013最新版官方下载 金税盘和报税盘分别有什么作用?各自的使用方法是什么? 关于调用带输出参数的oracle存储过程 qq2013的版本 oracle带输入参数的存储过程 qq2013安卓版下载