Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

Bagaimana cara mencetak SYS_REFCURSOR dengan jendela PLSQLDeveloper?

Jika dengan "SQL Window" yang Anda maksud adalah SQL*PLUS , maka untuk mencetak (menggunakan PRINT perintah) isi kursor, Anda perlu mendeklarasikan variabel bind di luar blok PL/SQL, menetapkan nilai ke variabel bind di dalam blok PL/SQL dengan mengeksekusi blok dan kemudian mencetak konten dengan menggunakan PRINT perintah:

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;

EDIT :

Untuk melihat isi kursor di PL/SQL Developer, sebagai salah satu opsi, Anda cukup melakukan hal berikut:

  1. Jendela File\New\Test
  2. Salin/Tempel blok PL/SQL anonim Anda di sana. Sebelum ini hapus IO_CURSOR SYS_REFCURSOR; deklarasi variabel. Tidak perlu itu. Ubah juga isr_main_view => IO_CURSOR ke isr_main_view => :IO_CURSOR . Anda perlu menggunakan variabel bind dalam kasus ini.
  3. Di variables window di bagian bawah test window tentukan nama variabel kursor ref Anda yang isinya ingin Anda lihat (IO_CURSOR tanpa titik koma sebelumnya ) dan pilih ketik cursor .
  4. Jalankan blok dengan menekan segitiga hijau.
  5. Setelah blok PL/SQL dijalankan lihat kolom value dari variables window . Tekan tombol dengan elipsis di atasnya untuk melihat isi kursor ref IO_CURSOR .


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Spasi tidak diperbolehkan setelah awalan parameter ':'

  2. Bagaimana cara mengubah XML ke Objek OCI-Lob?

  3. Pembaruan SQL dengan bergabung

  4. Bagaimana cara Oracle SELECT FROM dual bekerja dengan banyak bidang?

  5. Mendapatkan nilai Kemunculan Pertama dari XML menggunakan parser oracle