Anton Andreev wrote:
> Hi,
>
> I am trying to use cursors and I am really frustrated already. Do I
> need to install an extension?
No, you just need to have a look at the docs.
http://www.postgresql.org/docs/8.2/static/plpgsql-control-structures.html#PLPGSQL-RECORDS-ITERATING
> 1. Problem number one is that what ever I use in front of the fetch
> command it is not being accepted, it gives a syntax error. If I use a
> number ,"all" or "forward" it gives an error again?????????? I want to
> do something like the code below:
>
> CREATE OR REPLACE FUNCTION database_correction()
> RETURNS double precision AS
> $BODY$
> [...]
Try something like this:
CREATE OR REPLACE FUNCTION database_correction()
RETURNS double precision LANGUAGE plpgsql AS
$body$
DECLARE
fund INTEGER;
BEGIN
FOR fund IN SELECT DISTINCT(fund_id) FROM "NAV_values_bfb_history" LOOP
RAISE NOTICE $$ foo bar $$;
-- some computations here
END LOOP;
RETURN 42.0;
END;
$body$;
--
Alvaro Herrera http://www.CommandPrompt.com/
The PostgreSQL Company - Command Prompt, Inc.