Skip to Main Content

SQL & PL/SQL

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Reg: Normal Cursor and a Parameterized Cursor

EV259Feb 6 2014 — edited Feb 6 2014

Dear All,

Could you please clarify me on the below ones, What and all differences between a Normal Cursor and a Parameterized Cursor.

CREATE OR REPLACE

  FUNCTION CFN(

      VEMPNO NUMBER)

    RETURN VARCHAR2

  IS

    CURSOR C1

    IS

      SELECT ENAME FROM EMP WHERE EMPNO = VEMPNO;

    vename VARCHAR2(10);

  BEGIN

    OPEN C1;

    LOOP

      FETCH C1 INTO VENAME;

      EXIT

    WHEN C1%NOTFOUND;

    END LOOP;

    RETURN VENAME;

    CLOSE c1;

  END;

 

SELECT cfn(7788) FROM dual;

  


SQL> set serverout on
SQL> CREATE OR REPLACE
  2    FUNCTION CFN(
  3        VEMPNO NUMBER)
  4      RETURN VARCHAR2
  5    IS
  6      CURSOR C1(vempno NUMBER)
  7      IS
  8        SELECT ENAME FROM EMP WHERE EMPNO = VEMPNO;
  9      vename VARCHAR2(10);
10    BEGIN
11      OPEN C1(vempno);
12      LOOP
13        FETCH C1 INTO VENAME;
14        EXIT
15      WHEN C1%NOTFOUND;
16      END LOOP;
17      RETURN VENAME;
18      CLOSE c1;
19    END;
20  /

Function created.

SQL> select cfn(7788) from dual;

CFN(7788)
--------------------------------------------------------------------------------
SCOTT

SQL>

Thanks

This post has been answered by Billy Verreynne on Feb 6 2014
Jump to Answer
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Mar 6 2014
Added on Feb 6 2014
5 comments
2,976 views