Re: Arrays versus 'type constant' syntax

Поиск
Список
Период
Сортировка
Искать
От
Tom Lane
Тема
Re: Arrays versus 'type constant' syntax
Дата
Msg-id
25800.931967880@sss.pgh.pa.us
Ответ на
Список
Дерево обсуждения
Re: [HACKERS] Re: Arrays versus 'type constant' syntax Thomas Lockhart <lockhart@alumni.caltech.edu>
Thomas Lockhart  writes:
>> 2. Remove "AexprConst ::= Typename Sconst" from the grammar.  I do
>> not believe this rule is in SQL92.

> Sorry, this *is* SQL92 syntax.

I've just grepped the SQL92 spec in some detail, and I see noplace
that allows "typename stringconstant".  "::" is indeed not standard,
but the only type conversion syntax I see in the spec isCAST (value AS type)

If I'm missing something, please cite chapter and verse.

>> 3. Simplify the AexprConst rule to only allow a subset of Typename
>> --- it looks like forbidding array types in this context is enough.
>> (You could still write a cast using :: or AS, of course, instead of
>> "int4[3] '{1,2,3}'".  The latter has never worked anyway.)
>> I'm leaning to choice #3, but I wonder if anyone has a better idea.

> I don't have a strong opinion about what #3 would introduce as far as
> future constraints.

If "typename stringconstant" actually is standard then we have a
problem, because I would not like to forbid array types in a standard
construct.  But the grammar is not LALR(1) in the presence of array
types, so we may not have much choice...
		regards, tom lane

В списке pgsql-hackers по дате отправления
От: Ansley, Michael
Дата:
Сообщение: RE: [HACKERS] MAX Query length
От: Tom Lane
Дата:
Сообщение: Re: [HACKERS] MAX Query length
FAQ