Oracle
 sql >> база данни >  >> RDS >> Oracle

Алтернатива на sys_refcursor

Използвайте

TYPE cursor_type IS REF CURSOR;

или строго въведен курсор:

CREATE PACKAGE SCHEMA_NAME.PACKAGE_NAME
AS
  TYPE Table_Name_Cursor IS REF CURSOR RETURN SCHEMA_NAME.TABLE_NAME%ROWTYPE;

  -- You said this does not work.
  -- PROCEDURE get_Weakly_Typed_Cursor (
  --   out_cursor OUT SYS_REFCURSOR
  -- );

  PROCEDURE get_Strongly_Typed_Cursor (
    out_cursor OUT Table_Name_Cursor
  );
END;
/

CREATE PACKAGE BODY SCHEMA_NAME.PACKAGE_NAME
AS
  PROCEDURE get_Strongly_Typed_Cursor (
    out_cursor OUT Table_Name_Cursor
  )
  AS
  BEGIN
    OPEN out_cursor FOR
    SELECT * FROM SCHEMA_NAME.TABLE_NAME;
  END;
END;
/


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Променете текста на Oracle SQL заявка преди изпращане

  2. Разгръщане на множество изчислителни екземпляри на Oracle, използвайки пул от екземпляри и terraform

  3. Ограничете SQL заявката само до първите два броя на група

  4. SQL - Как да изберете ред с колона с максимална стойност (+ групиране по)

  5. Oracle.DataAccess не е наличен за избор във Visual Studio 2013