Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

Làm cách nào để in SYS_REFCURSOR với cửa sổ PLSQLDeveloper?

Nếu theo "Cửa sổ SQL", bạn có nghĩa là SQL * PLUS, thì để in (sử dụng PRINT lệnh) nội dung của con trỏ, bạn cần khai báo một biến ràng buộc bên ngoài khối PL / SQL, gán giá trị cho biến ràng buộc đó bên trong khối PL / SQL bằng cách thực thi khối và sau đó in nội dung bằng cách sử dụng PRINT lệnh:

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;

CHỈNH SỬA :

Để xem nội dung của con trỏ trong PL / SQL Developer, là một trong các tùy chọn, bạn chỉ cần thực hiện như sau:

  1. Tệp \ Mới \ Cửa sổ kiểm tra
  2. Sao chép / Dán khối PL / SQL ẩn danh của bạn vào đó. Trước đó, hãy xóa IO_CURSOR SYS_REFCURSOR; sự định nghĩa biến. Không cần nó. Đồng thời thay đổi isr_main_view => IO_CURSOR tới isr_main_view => :IO_CURSOR . Bạn cần sử dụng biến ràng buộc trong trường hợp này.
  3. Trong cửa sổ variables window ở cuối test window chỉ định tên biến của con trỏ tham chiếu của bạn nội dung mà bạn muốn xem (IO_CURSOR không có dấu chấm phẩy trước) và chọn loại cursor .
  4. Thực thi khối bằng cách nhấn vào hình tam giác màu xanh lục.
  5. Sau khi khối PL / SQL được thực thi, hãy tham chiếu đến cột value của cửa sổ variables window . Nhấn vào nút có dấu ba chấm để xem nội dung của con trỏ tham chiếu 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. Làm cách nào để nối hai bảng dựa trên giá trị chuỗi con của các trường?

  2. Làm cách nào để ứng dụng Java của tôi tự nhận dạng với Oracle khi kết nối?

  3. Kết hợp các câu lệnh DDL và DML trong một tập lệnh duy nhất

  4. PL / SQL được lưu trữ thủ tục ra con trỏ tới VBA ADODB.RecordSet?

  5. Ngày và giờ của Oracle không tiết kiệm ánh sáng ban ngày qua JDBC