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

Návrat z funkce s parametrem OUT

Fungovalo by to takto:

CREATE OR REPLACE FUNCTION name_function(param_1 varchar
                                   , OUT param_2 bigint)
  LANGUAGE plpgsql AS
$func$
BEGIN
    INSERT INTO table (collumn_seq, param_1)  -- "param_1" also the column name?
    VALUES (DEFAULT, param_1)
    RETURNING collumn_seq
    INTO param2;
END
$func$;

Normálně byste přidali RETURN příkaz, ale s OUT parametry, je to volitelné.
Další podrobnosti naleznete v příručce:

  • Návrat z funkce
  • Provedení dotazu s výsledkem na jednom řádku

Jednoduchý případ lze pokrýt jednoduchou funkcí SQL.
A můžete vynechat cílový sloupec, který bude mít svůj DEFAULT value.
A stejně tak můžete použít RETURNS doložka v tomto případě:

CREATE OR REPLACE FUNCTION name_function(param_1 varchar)
  RETURNS bigint
  LANGUAGE sql AS
$func$
INSERT INTO table (param_1)  -- "param_1" also the column name?
VALUES (param_1)
RETURNING collumn_seq;
$func$;



  1. Co je to sakra DTU?

  2. Jak spustit uloženou proceduru každý den v SQL Server Express Edition?

  3. Jak určit velikost tabulek v Oracle

  4. Analyzujte datum v MySQL