sql >> Database teknologi >  >> RDS >> Oracle

Returnerer en ref-markør fra en Oracle-funktion

Et par fejl, se på mit arbejdseksempel, har lige ændret kildetabellen:

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;
 

Her behøver du ikke åbne markøren, den er allerede åbnet.

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;

Et virkelig interessant indlæg, der viser, hvordan man tester orakelmarkører:

5 forskellige måder at test Oracle Ref Cursor-resultater



  1. Forbind din OEM til Grafana ved hjælp af Enterprise Manager-appen til Grafana

  2. Sikkerhedskopier mySQL-databaser fra localhost, der kører på Wamp-serveren

  3. Codeigniter viser tom side uden fejl

  4. Sådan får du database-metadata