Re: Name column - Mailing list pgsql-hackers

From Pavel Stehule
Subject Re: Name column
Date
Msg-id AANLkTimBkbrHo+GwG551T-Z_VUtE2OYqNyE3+mvxDGxd@mail.gmail.com
Whole thread Raw
In response to Re: Name column  (André Fernandes<andre.de.camargo.fernandes@hotmail.com>)
Responses Re: Name column  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
2010/9/24 André Fernandes <andre.de.camargo.fernandes@hotmail.com>:
>
>
>> Date: Fri, 24 Sep 2010 08:01:35 -0400
>> Subject: Re: [HACKERS] Name column
>> From: robertmhaas@gmail.com
>> To: heikki.linnakangas@enterprisedb.com
>> CC: arhipov@dc.baikal.ru; pgsql-hackers@postgresql.org
>>
>> On Fri, Sep 24, 2010 at 6:35 AM, Heikki Linnakangas
>> <heikki.linnakangas@enterprisedb.com> wrote:
>> > For historical reasons PostgreSQL supports calling a function with a
>> > single
>> > argument like "column.function", in addition to "function(column)".
>> > There is
>> > a function "name(text)" that casts the input to the 'name' datatype, so
>> > your
>> > example casts the row to text and from text to name.
>>
>> I'm starting to wonder if we should think about deprecating this
>> behavior. It is awfully confusing and unintuitive.
>>
>
> I agree, it is very unintuitive.
> +1  for deprecating this behavior.

+1

I dislike this feature too. It is breaking other ANSI SQL feature -
constructors, because it has same syntax tablename(field1, field2,
....). Sure, usually we can do

ROW(a,b,c)::type - but little bit nicer and with standard is type(a,b,c).

Regards

Pavel Stehule
>


pgsql-hackers by date:

Previous
From: Thom Brown
Date:
Subject: Re: Enable logging requires restart
Next
From: Robert Haas
Date:
Subject: Re: Name column