Als u met "SQL-venster" SQL*PLUS bedoelt, dan om af te drukken (met behulp van PRINT
commando) de inhoud van een cursor, moet u een bindvariabele declareren buiten het PL/SQL-blok, een waarde toewijzen aan die bindvariabele in het PL/SQL-blok door het blok uit te voeren en vervolgens de inhoud afdrukken met behulp van PRINT
commando:
SQL> variable IO_CURSOR refcursor;
SQL> DECLARE
2 SOME_VAR_1 VARCHAR2(20);
3 SOME_VAR_2 VARCHAR2(20);
4 SOME_VAR_3 DECIMAL;
5 --IO_CURSOR SYS_REFCURSOR;
6 BEGIN
7 SOME_VAR_1 := 'test1';
8 SOME_VAR_2 := 'test2';
9 SOME_VAR_3 := 1;
10 --IO_CURSOR := NULL; -- no need to do that
11 Get_Analysis_Data(p_in_symbol_type => SOME_VAR_1,
12 p_in_symbol => SOME_VAR_2,
13 p_in_isr_id => SOME_VAR_3,
14 isr_main_view => :IO_CURSOR);
15 END;
16 /
SQL> print io_cursor;
BEWERKEN :
Om de inhoud van een cursor in PL/SQL Developer als een van de opties te zien, kunt u eenvoudig het volgende doen:
- Bestand\Nieuw\Testvenster
- Kopieer/plak je anonieme PL/SQL-blok daar. Voorafgaand hieraan verwijder
IO_CURSOR SYS_REFCURSOR;
variabele declaratie. Er is geen behoefte aan. Verander ookisr_main_view => IO_CURSOR
naarisr_main_view => :IO_CURSOR
. U moet in dit geval de bindvariabele gebruiken. - In het
variables window
onderaan hettest window
specificeer de variabelenaam van uw ref-cursor waarvan u de inhoud wilt zien (IO_CURSOR
zonder voorafgaande puntkomma ) en selecteer typecursor
. - Voer het blok uit door op de groene driehoek te drukken.
- Nadat het PL/SQL-blok is uitgevoerd, raadpleegt u de kolom
value
van hetvariables window
. Druk op de knop met ellips erop om de inhoud van de ref-cursorIO_CURSOR
te zien .