column definition for setof record functions (like dblink and crosstabs)

From: Willy-Bas Loos <willybas(at)gmail(dot)com>
To: pgsql-general(at)postgresql(dot)org
Subject: column definition for setof record functions (like dblink and crosstabs)
Date: 2012-06-06 11:03:56
Message-ID: CAHnozTj5p1BY4+dwsYv3MCPHV0QwcyMwWHq2Th7Q87O39WJUdQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Hi,

Functions that return SETOF RECORD need to be called with a column
definition. That is a bit limiting.
For example, you might not know how many columns your crosstab will have in
advance, you might not know the structure of a table that you access with
dblink in advance.
Also, it's always a more complicated query to write, which is not very user
friendly.

I searched a bit for the reason, and i found: "This allows the system to
understand what * should expand to, and what proname in the WHERE clause
refers to, in advance of trying to execute the function." in the dblink
page.
>From this sentence i can derive that there are some internal mechanisms
that need to have the the column definition before the data.

I was just wondering if there were a way to generate this information
automatically, so that the user need not supply it.
It would have a cost of course, but in some cases, it might certainly be
worth it.

Cheers,

WBL
--
"Quality comes from focus and clarity of purpose" -- Mark Shuttleworth

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Marc Mamin 2012-06-06 11:11:48 postgres function for the query tree based normalization?
Previous Message Albe Laurenz 2012-06-06 07:24:16 Re: acessibility for tables