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

Cách hiển thị dữ liệu sys_refcursor trong DataGrid của TOAD

Sau khi bạn nhấn F9 hộp thoại "Biến" xuất hiện và bạn chọn Type =Cursor từ danh sách thả xuống, sau đó nhấn OK:

Lý do bạn nhận được lỗi "ORA-24338:câu lệnh xử lý không được thực thi" là do bạn đang đóng con trỏ của mình trước khi nó được truy cập.

Đây là quá trình đang diễn ra:

  1. Thực thi thủ tục
  2. Câu lệnh OPEN trả về một con trỏ đến tập kết quả trong bộ nhớ (nhưng không trả về bất kỳ dữ liệu nào)
  3. Câu lệnh CLOSE loại bỏ kết quả trước khi chúng được truy cập
  4. Cuộc gọi thủ tục kết thúc
  5. Người gọi ứng dụng khách (trong trường hợp này là TOAD) cố gắng truy cập vào luồng kết quả, nhưng con trỏ không hợp lệ, vì vậy không thể đọc được gì và lỗi sẽ xảy ra

Giải pháp:Loại bỏ close lcursor; tuyên bố.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Kịch bản vàs Các bước nhận được sự cố thay đổi cuối cùng

  2. Triển khai SCD Loại 2 trong Oracle

  3. Phần trăm SQL Oracle

  4. Cách kiểm tra NULL hoặc không hợp lệ trong truy vấn HQL

  5. Thủ tục lưu trữ Oracle với các tham số cho mệnh đề IN