I want to write a function that creates a new column for every value
found in the table but something seems to go wrong with the variable:
CREATE FUNCTION transp() RETURNS int4 AS ' DECLARE col RECORD; cname varchar;
BEGIN CREATE TABLE tmp_trans (label) AS SELECT label FROM view_inc_age_1;
FOR col IN SELECT DISTINCT age_code FROM view_inc_age_1
LOOP cname := col.age_code; ALTER TABLE tmp_trans ADD COLUMN cname int4;
END LOOP; RETURN 0; END;
' LANGUAGE 'plpgsql';
persons=# SELECT transp();
ERROR: parser: parse error at or near "$1"
The problem occurs in the line containing "ALTER TABLE". Does anybody
know what is going wrong?
Hans