sql >> Database >  >> RDS >> PostgreSQL

PostgreSQL 11 - Procedures

U kunt INOUT . hebben parameters in een procedure.

Je roept een procedure aan met de CALL uitspraak; als er INOUT . zijn parameters, zal de instructie een resultaatrij retourneren, net als SELECT .

Hier is een voorbeeld dat een procedure gebruikt die een refcursor retourneert :

CREATE PROCEDURE testproc(INOUT r refcursor) LANGUAGE plpgsql AS
$$BEGIN
   r := 'cur';
   OPEN r FOR VALUES (1), (42), (12321);
END;$$;

BEGIN;

CALL testproc(NULL);

  r  
-----
 cur
(1 row)

FETCH ALL FROM cur;

 column1 
---------
       1
      42
   12321
(3 rows)

COMMIT;


  1. EBS R12 start en stop scripts

  2. Voorloopnullen verwijderen uit varchar sql-ontwikkelaar

  3. Moet ik indexen maken op externe sleutels op Oracle?

  4. Verschil tussen N'String' versus U'String'-letterwoorden in Oracle