On 02/05/2015 01:38 PM, Tim Smith wrote:
> Hi,
>
> I have a function that broadly looks like this :
>
> create function doStuff() returns json as $$
> DECLARE
> v_row my_view%ROWTYPE;
> BEGIN
> select * into strict v_row from my_view where foo=bar;
> select row_to_json(v_row) from v_row;
> END;
> $$ LANGUAGE plpgsql;
>
>
> However this does not seem to work ? What am I doing wrong ?
Well for starters is:
select * into strict v_row from my_view where foo=bar;
returning more than one row? v_row can only hold one row at a time.
Given that then:
select row_to_json(v_row) from v_row;
should be:
select row_to_json(v_row);
I would suggest taking a look at:
http://www.postgresql.org/docs/9.3/interactive/plpgsql-control-structures.html#PLPGSQL-RECORDS-ITERATING
Also error messages would be helpful:)
>
> Thanks
>
> Tim
>
>
--
Adrian Klaver
adrian.klaver@aklaver.com