Re: FW: Re: create temp in function

From: Klint Gore <kgore4(at)une(dot)edu(dot)au>
To: Kerri Reno <kreno(at)yumaed(dot)org>
Cc: Adrian Klaver <aklaver(at)comcast(dot)net>, pgsql-general(at)postgresql(dot)org, "Roberts, Jon" <Jon(dot)Roberts(at)asurion(dot)com>
Subject: Re: FW: Re: create temp in function
Date: 2008-04-22 23:49:17
Message-ID: 480E797D.8000607@une.edu.au
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Kerri Reno wrote:
> So the reason I'm getting the error is that I'm running it in 8.0.
> Thanks so much for your help!
> Kerri
use FOR instead

CREATE OR REPLACE FUNCTION private.get_salary_schedule(integer, text)
RETURNS record AS
$BODY$
declare
tcp_id alias for $1;
tfy alias for $2;
tbl text := 'saltab' || tfy;
arow record;
query text;
begin
query = 'select ' || 'salary_schedule, pay_column, step from ' || tbl ||
' where cp_id = ' || to_char(tcp_id,'99999999');
raise notice 'query: %', query;
for arow in execute query loop
return arow;
end loop;
return null;
end;
$BODY$
LANGUAGE 'plpgsql' STABLE SECURITY DEFINER;

you probably need to protect tfy from sql injection too. see quote_ident.

klint.

--
Klint Gore
Database Manager
Sheep CRC
A.G.B.U.
University of New England
Armidale NSW 2350

Ph: 02 6773 3789
Fax: 02 6773 3266
EMail: kgore4(at)une(dot)edu(dot)au

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Clemens Schwaighofer 2008-04-23 00:01:40 Re: Postgres Encoding conversion problem
Previous Message Tom Lane 2008-04-22 23:33:11 Re: Rapidly decaying performance repopulating a large table