On 2/26/06, Karsten Hilbert <Karsten.Hilbert@gmx.net> wrote:
> Please help.
how?
is there any place where postgres' SQL:2003 incompatibilities are
being discussed?
I really want to have standard-compatible PostgreSQL and some option
in postgresql.conf that would allow me to restrict Postgres' SQL
syntax to standard. The suggestion 'to feel free and use only standard
queries' is the bad thing, because:
a. the papers of SQL:2003 are quite hard to understand, even for good
specialist (the main part, #2 has more than 1300 pages!)
b. what about novices? it's almost impossible to go the right way for
them. PostgreSQL has very-very good documentation, but it teaches to
go Pg's way, which is not right in that sense, unfortunately...
Now we have a lot of incompatibilities. I would classify them:
1. 'Extending' features - things that offer the same abilities that
standard constructions. Some of these things allow to use shorter
syntax, but I really think that many of them are just 'heritage of the
past'. Yes, standard is 'talkative', but I prefer only standard
things, because it helps me to understand other databases and
'academical things'. Actually, I hate ':=', '::', 'INT2', etc, and
really want to be able to deprecate them (via conf or something)
2. Features that are implemented in non-standard way (ot things that
are not yet implemented but could be considered as basic...) The good
examples are: ILIKE and lack of ability to set up collation (rules for
string comparison); lack of NULLS FIRST / LAST construction and
necessity to add additional ordering step to ORDER BY instead of that.
3. 'Ugly' things like DISTINCT ON expression [, ...] (see
http://chernowiki.ru/index.php?node=38#A13)
Maybe to create a sub-project (or special section in TODO) for
improving SQL:2003 compatibility?
I've encountered with many 'reefs' during migration from MS SQL to
Postgres. Some of them are here: http://chernowiki.ru. I do think that
such drawbacks complicate migration for other DBMSs' guys and
understanding SQL for newbies.
--
Best regards,
Nikolay