【发布时间】:2016-02-01 10:42:20
【问题描述】:
我在 oracle 数据库中有一个 PL/SQL 包,其中包含一个名为 FN_GET_USERINFO_ROWS 的流水线函数,如下所示:
CREATE OR REPLACE PACKAGE PKG_USERINFO AS
TYPE TY_USERINFO_RECORD IS RECORD( U_ID VARCHAR2(50),
U_NAME VARCHAR2(50),
DOB DATE);
TYPE TY_USERINFO_TABLE IS TABLE OF TY_USERINFO_RECORD;
FUNCTION FN_GET_USERINFO_ROWS(P_USER_ID IN NUMBER)
RETURN TY_USERINFO_TABLE PIPELINED;
END PKG_USERINFO;
我正在运行以下测试脚本来测试流水线 FN_GET_USERINFO_ROWS 在 PL/SQL Developer(File->New->Test Window)
declare
result PKG_USERINFO.TY_USERINFO_TABLE;
begin
-- calling pipelined function
result := PKG_USERINFO.FN_GET_USERINFO_ROWS(P_USER_ID => :P_USER_ID);
end;
但它显示以下错误:
ORA-06550:第 28 行,第 12 列:PLS-00653:聚合/表函数 在 PL/SQL 范围内是不允许的
如何使用 PL/SQL Developer 调试流水线函数?
【问题讨论】:
标签: oracle plsql plsqldeveloper