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

Tìm nạp dữ liệu từ Oracle SP Out Param SYS_REFCURSOR trong Unix Korn Shell Script

Bạn có print return_val của mình không đúng chỗ; Nó phải ở bên trong lệnh SQL * PLUS, trước khi thoát, để in ra biến con trỏ ref.

Bạn cũng cần thêm tiền tố return_val với dấu hai chấm trong lệnh gọi thủ tục của bạn, để cho biết nó đang sử dụng biến liên kết mà bạn vừa khai báo - mặc dù bạn cũng đã bỏ qua kiểu biến khỏi khai báo của nó. Điều này dường như làm những gì bạn muốn:

function runproc
{
    #read ref cursor from proc
    cur=`sqlplus -s $connectiondetails <<EOF
        SET PAGESIZE 0 FEEDBACK ON VERIFY OFF HEADING OFF ECHO OFF
        var return_val refcursor
        exec myproc_retcur(14, :return_val);
        print return_val
        EXIT
        EOF`
    return cur
}

Bạn chưa hiển thị WEEKNUM ở đâu bắt nguồn từ đó, vì vậy tôi đã cố gắng mã hóa nó thành một số ngay bây giờ.

Tôi nghĩ rằng bạn có thể muốn vô tình tắt phản hồi chứ không phải bật.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Hàm RTRIM () trong Oracle

  2. Làm cách nào để khôi phục các thay đổi DB của tôi sau khi cam kết?

  3. Làm thế nào để có được ngày đầu tiên và ngày cuối cùng trong tuần trong Oracle?

  4. Làm cách nào để chạy tổng từ cột thứ hai

  5. 12c Các tính năng không được dùng nữa