找回密码
 立即注册

QQ登录

只需一步,快速开始

KearneyKang讲师达人认证 悬赏达人认证
超级版主   /  发表于:2018-12-26 09:12:39
11#
传定值可以吗
回复 使用道具 举报
wcfboy1
中级会员   /  发表于:2018-12-26 09:19:24
12#

不可以
回复 使用道具 举报
KearneyKang讲师达人认证 悬赏达人认证
超级版主   /  发表于:2018-12-26 14:01:13
13#
单独的调存储过程查询是可以的吧!
如果定值都不可以,那可能就是那里写的有点问题。
回复 使用道具 举报
wcfboy1
中级会员   /  发表于:2018-12-26 16:13:43
14#
KearneyKang 发表于 2018-12-26 14:01
单独的调存储过程查询是可以的吧!
如果定值都不可以,那可能就是那里写的有点问题。

关键是我不知道哪里出了问题,有个示例就好了
回复 使用道具 举报
KearneyKang讲师达人认证 悬赏达人认证
超级版主   /  发表于:2018-12-27 09:53:24
15#
这块没有具体的实例。等我抽时间研究下
回复 使用道具 举报
wcfboy1
中级会员   /  发表于:2018-12-27 11:41:13
16#
KearneyKang 发表于 2018-12-27 09:53
这块没有具体的实例。等我抽时间研究下

好,等你的研究结果
回复 使用道具 举报
KearneyKang讲师达人认证 悬赏达人认证
超级版主   /  发表于:2018-12-27 18:10:26
17#
首先你存储过程里面如果 如果写了参数,在参数赋值就就会默认的显示出存储过程的参数。


然后你的查询语句需要这样写:ReportsName @sValue1

中间用间隔号隔开

请参考这个列子:




本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
wcfboy1
中级会员   /  发表于:2019-2-21 16:37:13
18#
版主oracle存储过程验证的怎么样了
回复 使用道具 举报
KearneyKang讲师达人认证 悬赏达人认证
超级版主   /  发表于:2019-2-22 11:39:36
19#
您好,前几天我是你Oracle的存储过程的也遇到问题,然后咨询了我们研发,这是研发刚刚给的一个使用办法。我还没来得及验资,我先发给你你看看。我这边等下再去验证
  1. Oracle数据库的存储过程主要用于更新数据,报表数据集要求返回表状数据,所以下面的步骤实际是定义和使用Oracle的自定义函数。

  2. (1)定义对象(object)类型
  3. 根据数据集字段结构定义一个object类型,以HR.JOBS表为例:

  4. create type job_obj
  5. is object
  6. (
  7. JOB_ID varchar2(10)
  8. ,JOB_TITLE varchar2(35)
  9. ,MIN_SALARY number(6,0)
  10. ,MAX_SALARY number(6,0)
  11. )

  12. (2)定义表(table)类型

  13. create type job_table is table of job_obj

  14. (3)定义函数(function)

  15. create or replace function fun_jobs(p1 IN number) return job_table
  16. is
  17.   l_jobs_tab job_table := job_table();
  18.   n integer := 0;
  19. begin
  20.    for r in (select * from JOBS where MIN_SALARY > p1)
  21.    loop
  22.    l_jobs_tab.extend;
  23.        n := n + 1;
  24.      l_jobs_tab(n) := job_obj(r.JOB_ID, r.JOB_TITLE, r.MIN_SALARY, r.MAX_SALARY);
  25.     end loop;
  26.      return l_jobs_tab;
  27. end;

  28. 其中p1是参数,请注意函数声明中的参数定义 (p1 IN number) 以及在函数体中的具体使用 (where MIN_SALARY > p1,参数名p1之前没有冒号!)

  29. (4)在报表数据集的定义中使用Oracle自定义函数
  30. 在报表设计器中,定义数据集时,查询语句要写成这样:

  31. select * from table (fun_jobs( :p1 ) )
  32. 其中:
  33. select * from table 是固定内容。
  34. fun_jobs 是Oracle自定义函数名。
  35. :p1 是数据集参数。
复制代码





本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
12
您需要登录后才可以回帖 登录 | 立即注册
返回顶部