Re: counterintuitive behaviour in pl/pgsql

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: counterintuitive behaviour in pl/pgsql
Дата
Msg-id 1516.1305991840@sss.pgh.pa.us
обсуждение исходный текст
Ответ на counterintuitive behaviour in pl/pgsql  (Dan S <strd911@gmail.com>)
Ответы Re: counterintuitive behaviour in pl/pgsql
Список pgsql-general
Dan S <strd911@gmail.com> writes:
> And yes I do know that I can fix the problem by renaming the output column
> to something else than i , I'm just curious about the behaviour and if it
> should work like this and why.

> CREATE OR REPLACE FUNCTION dynamic_query(i int) RETURNS TABLE (i int) as $$

This should probably throw an error.  There is a check that disallows
having two input or two output parameters named the same, but the
comment about it says:

            /*
             * As of Postgres 9.0 we disallow using the same name for two
             * input or two output function parameters.  Depending on the
             * function's language, conflicting input and output names might
             * be bad too, but we leave it to the PL to complain if so.
             */

It looks like plpgsql didn't get the memo about checking this.

            regards, tom lane

В списке pgsql-general по дате отправления:

Предыдущее
От: Björn Häuser
Дата:
Сообщение: Re: counterintuitive behaviour in pl/pgsql
Следующее
От: Michael Glaesemann
Дата:
Сообщение: Re: counterintuitive behaviour in pl/pgsql