求调用ORACLE存储过程传参模板

存储过程如下

create or replace procedure CS001(V_SL IN number default 10)

as


begin


insert into B

SELECT HH,SL+V_SL,SYSDATE FROM A;


commit;

end ;

在数据库中用EXEC  CS001;执行可以插入数据

想实现在点击查询时将参数传入存储过程插入数据

微信截图_20200428173115.png


FineReport sbeg571 发布于 2020-4-28 17:32 (编辑于 2020-4-29 11:00)
1min目标场景问卷 立即参与
回答问题
悬赏:4 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
孤陌Lv6资深互助
发布于2020-4-29 20:41
最佳回答
0
北纬六十六度Lv4初级互助
发布于2020-4-29 09:48

EXEC  存储过程‘变量’  这样不行吗?

  • sbeg571 sbeg571(提问者) 使用存储过程数据集没有报错,但在点击查询的时候好像是没有传递参数没有起作用
    2020-04-29 09:55 
  • 北纬六十六度 北纬六十六度 回复 sbeg571(提问者) 你的参数是根据你的数据集自动生成的吧,传参肯定不会有错,看看过程
    2020-04-29 09:56 
  • 北纬六十六度 北纬六十六度 回复 sbeg571(提问者) 不过我看你这个过程参数是哪个呀
    2020-04-29 09:57 
  • sbeg571 sbeg571(提问者) 回复 北纬六十六度 存储过程 create or replace procedure CS001(V_SL IN NUMBER) as begin insert into B SELECT HH,SL+V_SL,SYSDATE FROM A; commit; end ;
    2020-04-29 10:09 
  • 北纬六十六度 北纬六十六度 回复 sbeg571(提问者) 我觉得传参不会有问题,你自己直接执行insert 试试,应该是语句有问题没执行
    2020-04-29 10:32 
最佳回答
0
snrtuemcLv8专家互助
发布于2020-4-29 10:00

调用存储过程-https://help.finereport.com/doc-view-1438.html

调用存储过程:建议直接用 存储过程 数据集进行调用。

若是调用数据库存储过程取数,官方只支持查询语句 select 进行取数,其他写法(例如下面的写法), 返回的结果不能保证,不建议使用 :

在数据库数据集处调用,即在数据库查询中,添加语句有两种方式

(1)call 存储过程名

{call username.package.procedure('${p1}','${p2}','${p3}',?)} 即可

注意:call 存储过程名称后面必须加括号,哪怕该存储过程没有参数传递


  • 4关注人数
  • 1196浏览人数
  • 最后回答于:2020-4-29 20:41
    请选择关闭问题的原因
    确定 取消
    返回顶部