день добрый.
есть желание устроить перебор всех столбцов таблицы в цикле, дабы не завязываться на их количество. есть переменная NEW — то, что будет вставлено после завершения транзакции.
подобный код:
declare
var1 text;
var2 text;
begin
for var1 in select column_name from information_schema.columns where table_name =TG_RELNAME loop
var2:=select NEW.var1.column.name;
end;
приводит к ошибке. говорит, что NEW — это record, а не rule.
при попытке изменить на нечто подобное:
var3:=var1.column.name;
var2:=select NEW.var3;
возникает ошибка "нет колонки с именем var3"
попытка обозначить приоритеты через скобки:
var3:=var1.column.name;
var2:=select NEW.(var3);
возвращает просто синтаксическую ошибку вида:
var2:=select $1.($2);
может кто сталкивался? как воевать?