次のように定義された非常に単純な関数があります。
CREATE OR REPLACE FUNCTION create_new_order(....) RETURNS integer AS
$BODY$
BEGIN
PERFORM add_points_to_usage(client_id_p, date_in_p, total_points_p);
INSERT INTO orders (...) VALUES (...)
RETURNING ident;
END;
$BODY$ LANGUAGE plpgsql;
私が苦労しているのは、ident
フィールドに格納されている値を RETURNING 句を介して実際に返す方法です。値を変数に設定しようとしましたが、うまくいかないか、構文を台無しにしています。