haoshuishangsha 发表于 2019-12-20 11:49:00

Oracle 存储过程返回结果集

本帖最后由 haoshuishangsha 于 2019-12-25 09:21 编辑

activereport怎么调用Oracle的存储过程,该存储过程怎么写才能让报表工具调用并显示出下图效果。有没有示例?




Lenka.Guo 发表于 2019-12-20 16:09:05

您好

Oracle 存储过程是在添加数据集时,设置类型为 Text
然后在过程查询语句中输入查询语句,示例如下:

创建存储过程:
create or replace FUNCTION DT_GETEMPLOYEECITY (employee_id IN NUMBER, addedIndex IN NUMBER)
RETURN VARCHAR2 AS
CITYNAME VARCHAR2(50 char);
ADDRESS_ID NUMBER(8,0);
new_employee_id NUMBER(8,0);
BEGIN
new_employee_id := employee_id + addedIndex;
Select ADDRESSID into ADDRESS_ID FROM EMPLOYEE WHERE new_employee_id=EMPLOYEEID;
select CITY into CITYNAME from ADDRESS WHERE ADDRESS_ID=ADDRESSID;
IF CITYNAME IS NOT NULL THEN
    return CITYNAME;
END IF;

END DT_GETEMPLOYEECITY;查询语句输入:
SELECT *
from address
wherecity = DT_GETEMPLOYEECITY(:EmployeeID, :IncrementNumber)






haoshuishangsha 发表于 2019-12-20 16:45:47

Lenka.Guo 发表于 2019-12-20 16:09
您好

Oracle 存储过程是在添加数据集时,设置类型为 Text


谢谢,但是这不是我们需要的。我们需要在存储过程里返回select * from address整个表的结果。这个要怎么弄?

KearneyKang 发表于 2019-12-20 17:19:06

你好,你可以参考这个博客,看看存储过程怎么使用:https://gcdn.grapecity.com.cn/forum.php?mod=viewthread&tid=54414&extra=page%3D1

haoshuishangsha 发表于 2019-12-23 10:57:13

KearneyKang 发表于 2019-12-20 17:19
你好,你可以参考这个博客,看看存储过程怎么使用:https://gcdn.grapecity.com.cn/forum.php?mod=viewthre ...

sqlsever的没有问题,但是公司想转成oracle。oracle的存储过程想要返回数据集会用到游标,这样怎么在ar上进行显示?想知道没有oracle的存储过程返回数据集的事例。

haoshuishangsha 发表于 2019-12-23 15:34:39

急需oracle的存储过程返回数据集的事例

KearneyKang 发表于 2019-12-23 16:37:41

没有具体的对应的事列,oracle的存储过程的用法如下:https://gcdn.grapecity.com.cn/fo ... &extra=page%3D1
页: [1]
查看完整版本: Oracle 存储过程返回结果集