Dynamiczne przekazywanie nazw kolumn dla zmiennej rekordu w PostgreSQL

Używając PostgreSQL, wartości kolumn z tabeli dla pierwszego rekordu są przechowywane w zmiennej rekordowej. na przykład: niech zmienna będzie:recordvar

recordvar.columnname

podaje wartość podanej nazwy kolumny. Zdefiniujęcolumname w zmiennej:

var := columnname

Zamiastcolumnname jeśli zastąpię zmienną, tj.recordvar.var, to nie działa.

Daj mi znać, jak postępować w tej sytuacji. Oto przykładowy kod:

CREATE OR REPLACE FUNCTION getrowdata(id numeric, table_name character varying)
RETURNS SETOF void AS
$BODY$ 
DECLARE

srowdata record;
reqfield character varying;
value numeric;


BEGIN

RAISE NOTICE 'id: %',id; 
reqfield:= 'columnname';

EXECUTE 'select * from datas.'||table_name||' WHERE id = '||id into srowdata;

RAISE NOTICE 'srowdata: %',srowdata; 

RAISE NOTICE 'srowdatadata.columnname: %',srowdata.columnname;

value:= srowdata.reqfield;

RAISE NOTICE 'value: %',value;


END;
$BODY$
LANGUAGE plpgsql VOLATILE
COST 100
ROWS 1000;

questionAnswers(1)

yourAnswerToTheQuestion