I got the following error when try to create a function to return an
integer and SETOF refcursor. I want to get refcursors back along with an
Out parameter in one function. There seems to be a conflict on return
type. How do I fix it? Thanks.
ERROR: function result type must be integer because of OUT parameters
CREATE OR REPLACE FUNCTION testrefcursor(IN uid integer, OUT tcount integer)
RETURNS SETOF refcursor AS
$BODY$
DECLARE
o_user refcursor;
o_name refcursor;
BEGIN
tcount := 100; -- add some logic to calculate tcount
OPEN o_user FOR SELECT * FROM usr_table where usr_id = uid;
RETURN NEXT o_user;
OPEN o_name FOR SELECT * FROM temp_table;
RETURN NEXT o_name;
END;
$BODY$
LANGUAGE 'plpgsql' VOLATILE
COST 100;