Re: SQL Standards Compliance With Case

Поиск
Список
Период
Сортировка
От Scott Marlowe
Тема Re: SQL Standards Compliance With Case
Дата
Msg-id 1152805985.14241.65.camel@state.g2switchworks.com
обсуждение исходный текст
Ответ на Re: SQL Standards Compliance With Case  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-general
On Wed, 2006-07-12 at 22:26, Tom Lane wrote:
> Rich Shepard <rshepard@appl-ecosys.com> writes:
> >    I'm trying to assist the XRMS developers port their application to
> > postgres (8.1.x on), and it's almost there. One (perhaps the only) stumbling
> > block is case for table and column (relation and attribute) names.
> > Apparently MySQL allows for mixed case, while postgres wants only lower
> > case. One of the development team asked me to enquire when postgres would be
> > fully compliant with the SQL standard in this reqard.
>
> It's probably worth pointing out here that the MySQL behavior they seem
> to be expecting is considerably further from the spec than Postgres's
> behavior.  If I'm reading between the lines correctly, they are
> expecting foo and Foo (both written without double-quotes) to be
> distinct identifiers.  But these are the same identifier per spec,
> because the spec *requires* case-folding of unquoted identifiers.

It's even worse than that.  MySQL uses filenames to identify tables,
like PostgreSQL did back in the days when dinosaurs roamed the plains
and the British Police force drove sexy cars (ok, not that far back, but
anyway)...

This means that when installed in unix, table Foo and table foo are
unique and pretty flowers, but when installed on Windows, they are the
same name...

My recommendation is to either stick to one case, all the time, or to
quote, all the time.  I prefer to just stick to one case all the time.


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

Предыдущее
От: Scott Marlowe
Дата:
Сообщение: Re: cant connect to the database, even after doing start
Следующее
От: Claire McLister
Дата:
Сообщение: Re: stored function - array parameter - how many element in array ?