sql >> Databáze >  >> RDS >> PostgreSQL

PostgreSQL 11 - Procedury

Můžete mít INOUT parametry v proceduře.

Proceduru voláte pomocí CALL prohlášení; pokud existují nějaké INOUT parametry, příkaz vrátí řádek výsledku stejně jako SELECT .

Zde je příklad, který používá proceduru, která vrací refcursor :

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. Funkce Snapshot Controlfile pomocí RMAN a ORA-00245

  2. Použití INNER JOIN ke kombinaci tabulek SQL Server a jejich zobrazení ve webových formulářích ASP.NET

  3. Syntaxe SQL TRUNCATE – uvedena v DBMS

  4. Jak vypočítat kumulativní součet v MySQL