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

Mengembalikan kursor ref dari Fungsi Oracle

Beberapa kesalahan, lihat contoh kerja saya, baru saja mengubah tabel sumber:

CREATE OR REPLACE FUNCTION  TEST_CUR RETURN SYS_REFCURSOR
AS
   VAR_REF SYS_REFCURSOR;
BEGIN
    OPEN VAR_REF FOR
        SELECT *
        FROM DUAL;

    RETURN VAR_REF;
END;

Di sini Anda tidak perlu membuka kursor, itu sudah dibuka.

DECLARE
    L_VAR SYS_REFCURSOR;
    L_STATUS VARCHAR2(10);
BEGIN
    L_VAR:=TEST_CUR;
    LOOP
        FETCH L_VAR INTO L_STATUS;
        EXIT WHEN L_VAR%NOTFOUND;
        DBMS_OUTPUT.PUT_LINE( L_STATUS );
    END LOOP;
    CLOSE L_VAR;
END;

Postingan yang sangat menarik menunjukkan cara menguji kursor Oracle:

5 cara berbeda untuk menguji hasil Oracle Ref 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. Buffer string karakter kesalahan terlalu kecil di Oracle Stored Procedure

  2. Bagaimana cara memaksa kasus pascal dengan dukungan Oracle Entity Framework?

  3. log pemicu oracle

  4. file atau operasi LOB FILEOPEN gagal saat memuat file XML ke dalam tabel

  5. Apakah ada Oracle yang setara dengan OUTPUT INSERTED.* SQL Server?