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

Có thể xuất ra một câu lệnh SELECT từ một khối PL / SQL không?

Bạn có thể thực hiện việc này trong Oracle 12.1 trở lên:

declare
    rc sys_refcursor;
begin
    open rc for select * from dual;
    dbms_sql.return_result(rc);
end;

Tôi không có DBVisualizer để kiểm tra, nhưng đó có thể là điểm khởi đầu của bạn.

Để biết thêm chi tiết, hãy xem Bộ kết quả ngầm định trong Hướng dẫn các tính năng mới của Oracle 12.1, Cơ sở Oracle, v.v.

Đối với các phiên bản trước đó, tùy thuộc vào công cụ, bạn có thể sử dụng các biến liên kết con trỏ ref như ví dụ này từ SQL * Plus:

set autoprint on

var rc refcursor

begin
    open :rc for select count(*) from dual;
end;
/

PL/SQL procedure successfully completed.


  COUNT(*)
----------
         1

1 row selected.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Chuyển và trả về đối tượng mảng tùy chỉnh trong ibatis và oracle trong java

  2. Làm thế nào để viết truy vấn chèn oracle được tham số hóa?

  3. ORA-00054:tài nguyên bận và có được với NOWAIT được chỉ định

  4. Oracle tham gia - So sánh giữa cú pháp thông thường và cú pháp ANSI

  5. ORA-06508:PL / SQL:không thể tìm thấy đơn vị chương trình đang được gọi