In plpgsql, I can access columns with a name containing capital letters by enclosing the name in double quotes: tbl."ColName"
However, if the quoted name contains spaces or hyphens I get an error message. It is surprising that this does not work in plpgsql when it does with sql.
Thus, the following line produces an error (unterminated ") in plpgsql: IF OLD."-person-initials" ... THEN
However, I discovered that rewriting using EXECUTE does work:
DECLARE curs1 refcursor; personinitials int4;
...
OPEN curs1 FOR EXECUTE ''SELECT "-person-initials" AS pers FROM "''||TG_RELNAME||''" WHERE id=''||OLD.id;
FETCH curs1 INTO personinitials;
CLOSE curs1;
IF personinitials ... THEN
Could I have solved this problem in an easier way, by using some kind of escape codes in the example producing the error (IF OLD."-person-initials" ... THEN)?
Thanks, KP
---------------------------(end of broadcast)--------------------------- TIP 9: the planner will ignore your desire to choose an index scan if your joining column's datatypes do not match