Het zou als volgt werken:
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$;
Normaal gesproken zou je een RETURN
. toevoegen statement, maar met OUT
parameters, dit is optioneel.
Raadpleeg de handleiding voor meer details:
- Terugkerend van een functie
- Een query uitvoeren met een resultaat van één rij
Het eenvoudige geval kan worden afgedekt met een eenvoudige SQL-functie.
En u kunt de doelkolom weglaten die zijn DEFAULT
krijgt. waarde.
En je kunt net zo goed een RETURNS
. gebruiken clausule in dit geval:
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$;