Tom Lane wrote:
>Mike Rylander <mrylander@gmail.com> writes:
>
>
>>Using that logic, a functions with one OUT param would be the same as
>>a function returning a rowtype with only one column,
>>
>>
>
>But it's not (and no, I don't want to make it so, because the overhead
>for the useless record result would be significant).
>
> regards, tom lane
>
>---------------------------(end of broadcast)---------------------------
>TIP 6: explain analyze is your friend
>
>
>
Tom,
I hardly think the overhead would be significant on modern processors, I
don't think the majority of users are running on Pentium 90s.( I am
assuming you mean a performance overhead)
The whole point is the current behavior is inconsistent and not expected
and should be changed to be inline with the way other DB systems work.
What is the point of even allowing a single OUT param then? You might
as well just raise a error and tell the user that a single OUT param is
not allowed.
8.1 is going to bring even more users over from systems like Firebird,
MS SQL and even Oracle, and all of these allow a single OUT param and it
returns the name of the OUT param, not the name of the function. Like I
said before this behavior is going to make it more difficult to port
applications from other systems.
How difficult can it be to check if the function has a single OUT param
as compared to the old way of using RETURN?
Sorry if I am being a pain in the you know what, but I really think I am
correct on this matter.
Thanks,
Tony