2 つのテーブルで構成されるビューがあります。テーブル TableA とテーブル TableB としましょう。
現在、テーブル A には約 20 列があり、テーブル B には 4 列あります。
TableA (
id datatype,
uid datatype,
.
.
.
18 more);
TableB (
id datatype,
uid datatype,
a_id datatype,
amount datatype,
CONSTRAINT tablea_tableb_fkey FOREIGN KEY (a_id)
REFERENCES tablea (id) MATCH SIMPLE
ON UPDATE RESTRICT ON DELETE RESTRICT,
);
したがって、TableA と TableB の間には 1 対多の関係があります。今、私は次のようにビューを書きました...
CREATE OR REPLACE VIEW AB AS
SELECT a.id, a.uid, ..., array_agg(b.amount) AS amounts
FROM TableA a
JOIN TableB b ON a.id = b.a_id
GROUP BY i.id;
ここで、ヘルパー関数を作成して、このビューの挿入ルールを作成したいと思います。この関数は、TableA に挿入するための約 18 個のパラメーター (デフォルト値id
をuid
持つ を除く) と、TableB の配列である 1 つのパラメーターを取ります。
したがって、関数の合計パラメーターは 19 です。関数に渡すことができる引数の最大数を知りたいpostgresql
ですか? これほど多くの引数を送信するのは賢明でしょうか? この多数の引数に対して関数を記述するより良い方法はありますか?