| От | Hans-Jürgen Schönig |
|---|---|
| Тема | PL/pgSQL problem with variables |
| Дата | |
| Msg-id | 3B081C4F.AC9E539C@cybertec.at обсуждение исходный текст |
| Список | pgsql-sql |
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
В списке pgsql-sql по дате отправления:
Сайт использует файлы cookie для корректной работы и повышения удобства. Нажимая кнопку «Принять» или продолжая пользоваться сайтом, вы соглашаетесь на их использование в соответствии с Политикой в отношении обработки cookie ООО «ППГ», в том числе на передачу данных из файлов cookie сторонним статистическим и рекламным службам. Вы можете управлять настройками cookie через параметры вашего браузера