Thread: looping through records

looping through records

From
"Bob Whitehouse"
Date:
I'm trying to create a function that loops through records returned from a
query. This is what I came up with but it doesn't work. Can anyone tell me
what I'm doing wrong?

CREATE FUNCTION test_loop(INT4, VARCHAR)
    RETURNS INT4
    AS 'DECLARE
        int_key ALIAS FOR $1;
        var_test VARCHAR;

    BEGIN
        var_test := $2;
        FOR row IN SELECT * FROM companies LOOP
            UPDATE companies SET name = var_test;
        END LOOP;
        RETURN int_key;
    END;'
LANGUAGE 'plpgsql';

Here's how I call the test loop and the error I get:

db=# SELECT test_loop(1, 'testing');
ERROR: parse error at or near ";"
db=#

Thanks, Bob