Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Usenet -> c.d.o.misc -> Re: Select into difficulties
Hello !
You can use cursors.
CURSOR idread ( id_in INTEGER)
IS SELECT match_prod_id FROM product_up_id_out
WHERE product_up-cross_sellbase_prod_id = id_in
AND product_up_cross_sell_match_type = 'U';
OPEN idread( prod_id_in);
FETCH idread INTO new_prod_id_out;;
IF idread%NOTFOUND THEN
new_prod_id_out := 0
END IF;
CLOSE idread;
Aarre Heikkilä
aarre_at_dlc.fi
On Wed, 14 Jan 1998 16:30:18 GMT, "Laura Bellini" <laura.bellini_at_compaq.com]> wrote:
>Hi.
>
>I am trying to populate a variable via a simple SELECT INTO statement.
>But, if the SELECT INTO returns no rows, I want to populate the variable
>with something else and continue the procedure. I DO NOT want to
>exception-out of the proc. Here is the statement w/in my proc:
>
>SELECT MATCH_PROD_ID
>INTO NEW_PROD_ID_OUT
>FROM PRODUCT_UP-CROSS_SELL
>WHERE PRODUCT_UP-CROSS_SELL.BASE_PROD_ID = PROD_ID_IN
>AND PRODUCT_UP_CROSS_SELL.MATCH_TYPE = 'U'
>
>PROD_ID_IN is an incoming parameter.
>If the above returns no rows, I just want to populate NEW_PROD_ID_OUT with
>PROD_ID_IN.
>
>Very simple, I think, but I'm unable to determine a way of doing it.
>
>thanks in advance.
>
>Laura Bellini
>laura_bellini_at_compaq.com
Received on Fri Jan 16 1998 - 00:00:00 CST