Lots of examples avlbl from Concepts manual; also pl check asktom.com

Step 1) Declare a ref cursor inside a package

CREATE PACKAGE APACK AS
   TYPE RefCurTyp IS REF CURSOR;
END APACK;

Step 2) Employ the ref curosr IN OUT variable inside the procedure..note 
that the cursor is opened but not fetched..

PROCEDURE demo_ref (
      refcurvar IN OUT RefCurTyp,
      choice     NUMBER) IS
   BEGIN
      IF choice = 1 THEN
         OPEN refcurvar FOR SELECT * FROM emp;
      ELSIF choice = 2 THEN
         OPEN refcurvar FOR SELECT * FROM dept;
      ELSIF choice = 3 THEN
         OPEN refcurvar FOR SELECT * FROM sal;
      END IF;
END demo_ref;




>From: "Igor Neyman" <[EMAIL PROTECTED]>
>Reply-To: [EMAIL PROTECTED]
>To: Multiple recipients of list ORACLE-L <[EMAIL PROTECTED]>
>Subject: Re: what pl/sql construct can return multiple rows?
>Date: Tue, 19 Mar 2002 08:08:35 -0800
>
>Use Ref Cursor (reference cursor) as a parameter in stored procedure.
>Sorry, don't have handy sample code, but you can lookup one in any PL/SQL
>book or docs.
>
>Igor Neyman, OCP DBA
>[EMAIL PROTECTED]
>
>
>----- Original Message -----
>To: "Multiple recipients of list ORACLE-L" <[EMAIL PROTECTED]>
>Sent: Tuesday, March 19, 2002 8:58 AM
>
>
> > Hi,
> >
> > Is there a way to write a procedure to return multiple rows?  I have 
>some
> > nasty SQL that I'd like to convert to run server-side, but how do you 
>spit
> > out multiple rows from PL/SQL?
> >
> > thx
> >
> >
> > Bill Magaliff
> > Framework, Inc.
> > 914-631-2322
> >


_________________________________________________________________
MSN Photos is the easiest way to share and print your photos: 
http://photos.msn.com/support/worldwide.aspx

-- 
Please see the official ORACLE-L FAQ: http://www.orafaq.com
-- 
Author: Madhusudhanan Sampath
  INET: [EMAIL PROTECTED]

Fat City Network Services    -- (858) 538-5051  FAX: (858) 538-5051
San Diego, California        -- Public Internet access / Mailing Lists
--------------------------------------------------------------------
To REMOVE yourself from this mailing list, send an E-Mail message
to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in
the message BODY, include a line containing: UNSUB ORACLE-L
(or the name of mailing list you want to be removed from).  You may
also send the HELP command for other information (like subscribing).

Reply via email to