Thanks guys. I think I see now. I was thinking it was a more transparent pass-by-value / pass-by-reference thing. Anyway I solved my problem by going back into my comfort zone and explicitly return a record and I'm not using OUT parameters. They're aren't what I thought they were and I'm working on a tight schedule, so I don't have much toim m eto explre. The compiler seems happier without them, and when it's happy, I'm happy.

Tom Lane wrote:
"Joshua D. Drake" <j...@commandprompt.com> writes:
On Wed, 2010-07-14 at 12:21 -0600, Bill Thoen wrote:
I'm having some difficulty getting plpgsql to recognize a function with a couple of OUT parameters.

psql:ex_out_fail.sql:28: ERROR: function fishy(text, text, integer, real) does not exist

You are passing four IN paramaters. The out paramaters are used in
return are they not?

You'd need to do something like

SELECT * INTO num, fnum FROM fishy(str1, str2) ;

OUT parameters in PG are just syntactic sugar for defining a
record-returning function.  The call syntax still works as if you'd
written CREATE FUNCTION foo (IN-parameters-only) RETURNS some-record-type.

                        regards, tom lane



--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

Reply via email to