Hi All,
I want to create a package like this .Database 11gR2(11.2.0.4).
CREATE OR REPLACE PACKAGE MYPACKAGE
AS
TYPE emp_type IS RECORD
(empno NUMBER(4),
ename VARCHAR2(10),
job VARCHAR2(9),
mgr NUMBER(4),
hiredate DATE,
sal NUMBER(7, 2),
comm NUMBER(7, 2),
deptno NUMBER(2)
);
TYPE emp_table_type IS TABLE OF emp_type;
FUNCTION Get_Something return emp_table_type PIPELINED;
END MYPACKAGE;
/
But getting error in package specification [Error] PLS-00306 (36: 17): PLS-00306: wrong number or types of arguments in call to 'EMP_TABLE_TYPE'
CREATE OR REPLACE PACKAGE BODY MYPACKAGE
AS
FUNCTION Get_Something
RETURN emp_table_type
PIPELINED
AS
TYPE EmpCurTyp IS REF CURSOR
RETURN emp%ROWTYPE;
emp_cv EmpCurTyp;
l_rec emp%ROWTYPE;
BEGIN
OPEN emp_cv FOR SELECT * FROM emp;
LOOP
FETCH emp_cv INTO l_rec;
EXIT WHEN (emp_cv%NOTFOUND);
PIPE ROW (emp_table_type (l_rec.empno,
l_rec.ename,
l_rec.job,
l_rec.mgr,
l_rec.hiredate,
l_rec.sal,
l_rec.comm,
l_rec.deptno));
DBMS_OUTPUT.put_line (l_rec.ename);
END LOOP;
RETURN;
END;
END MYPACKAGE;
/
Where is the mistake.