更新ルールから呼び出している関数のレコード変数から列を選択しようとすると、次のエラーが発生します。
'レコードデータ型の列"name"を識別できませんでした'
エラーを生成するために私が行っていることは次のとおりです。
更新ルール内から:
SELECT * INTO TEMPORARY TABLE TempTable FROM NEW;
SELECT MyFunction();
MyFunction()内から
DECLARE RecordVar Record;
SELECT * INTO STRICT RecordVar FROM TempTable;
EXECUTE 'UPDATE AnotherTable SET column = $1.name' USING RecordVar;
注:上記のコードが達成していることを達成するためのより簡単な方法があることを認識していますが、実際の実装を単純化して、私が抱えている問題に焦点を当てています。上記のコードは、可能であれば機能します。