Re: plpgsql, insert with wariables in function triggered
От | Jan Wieck |
---|---|
Тема | Re: plpgsql, insert with wariables in function triggered |
Дата | |
Msg-id | 200010231348.IAA01374@jupiter.jw.home обсуждение исходный текст |
Ответ на | plpgsql, insert with wariables in function triggered (Marcin Mazurek <M.Mazurek@poznan.multinet.pl>) |
Список | pgsql-general |
Marcin Mazurek wrote: [Charset iso-8859-2 unsupported, filtering to ASCII...] > Hi, > why I can't use tabb variable in INSERT ? > The error message I get is: > ERROR: parser: parse error at or near "$1" > > DECLARE > ids1 INTEGER; ids2 INTEGER; > tab TEXT; tabb TEXT; > ... > tab := TG_RELNAME; > tabb :=tab || ''_do_zablokowania''; > ... > if (NEW.stan=ids1) then > INSERT INTO tabb (zlecenie) VALUES ( OLD.id); > --line that casues the trouble > end if; > ... > tia > > Marcin Mazurek Because the backends main parser doesn't allow a parameter in place of an identifier. PL/pgSQL uses parameters in SPI queries to substitute local variables into queries. In 7.1 there is a new "EXEC <string expr>" command in PL/pgSQL. If you succeed in building a complete (correctly quoted) querystring for the operation, then you could use that for a while. I know that there are some problems with PL/pgSQL. I plan a complete rewrite when other features in the core DB system are available. Jan -- #======================================================================# # It's easier to get forgiveness for being wrong than for being right. # # Let's break this rule - forgive me. # #================================================== JanWieck@Yahoo.com #
В списке pgsql-general по дате отправления: