Wenn Sie mit "SQL-Fenster" SQL*PLUS meinen, dann zum Drucken (mit PRINT
Befehl) den Inhalt eines Cursors, müssen Sie eine Bind-Variable außerhalb des PL/SQL-Blocks deklarieren, dieser Bind-Variable innerhalb des PL/SQL-Blocks einen Wert zuweisen, indem Sie den Block ausführen, und dann den Inhalt mit PRINT
Befehl:
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;
BEARBEITEN :
Um den Inhalt eines Cursors in PL/SQL Developer als eine der Optionen anzuzeigen, können Sie einfach Folgendes tun:
- Datei\Neu\Testfenster
- Kopieren/fügen Sie Ihren anonymen PL/SQL-Block dort ein. Entfernen Sie vorher
IO_CURSOR SYS_REFCURSOR;
variable Aussage. Es besteht keine Notwendigkeit. Ändern Sie auchisr_main_view => IO_CURSOR
zuisr_main_view => :IO_CURSOR
. In diesem Fall müssen Sie die Bind-Variable verwenden. - Im
variables window
unten imtest window
Geben Sie den Variablennamen Ihres Ref-Cursors an, dessen Inhalt Sie sehen möchten (IO_CURSOR
ohne vorangestelltes Semikolon ) und wählen Sie den Typcursor
. - Führen Sie den Block aus, indem Sie auf das grüne Dreieck drücken.
- Nachdem der PL/SQL-Block ausgeführt wurde, beziehen Sie sich auf die Spalte
value
desvariables window
. Drücken Sie die Schaltfläche mit den Auslassungspunkten darauf, um den Inhalt des Ref-CursorsIO_CURSOR
anzuzeigen .