Bonjour,
Le titre est explicite, je souhaite passer un CURSOR en paramètre d'une procédure.
Je suis sous Oracle 10g.
J'ai écrit ce qui suit, mais j'ai un soucis de TYPE.
Quand je met "CURSOR" à la place de "SYS_REFCURSOR", ça ne marche pas non plus.
Le code en question :
Merci à vous pour votre aide.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28 SET serveroutput ON DECLARE CURSOR INTERNAL_PATH_CURSOR IS Select 1 as id from dual union Select 10 from dual ; myId INTEGER; PROCEDURE printRow( cur_lig IN SYS_REFCURSOR) IS BEGIN LOOP FETCH cur_lig INTO myId ; EXIT WHEN cur_lig%NOTFOUND ; dbms_output.put_line( 'Found : ' || myId ) ; END LOOP ; End; BEGIN dbms_output.put_line( 'Trying procedure with cursor ...' ) ; printRow(INTERNAL_PATH_CURSOR); END; /
Partager