Re: PostgreSQL or MySQL ?



On May 22, 5:13 pm, Nis Jørgensen <n...@xxxxxxxxxxxxx> wrote:
I have used both. Love Postgres. Hate MySQL.

I'm not going to argue that PostgreSQL isn't superior technology,
implemented some features long before MySQL, etc. I do agree with
that, and your points are well taken. But a few of your statements
below are not true.

The documentation for MySQL covers all versions at once. This means you
cannot just look at the syntax diagrams and assume that they apply to
the version you are running.

This is the case for MySQL now too. They do still have doc for
3.23/4.0/4.1 lumped together, but now the 5.0 and 5.1 doc are
presented separately.

http://dev.mysql.com/doc/refman/4.1/en/index.html
http://dev.mysql.com/doc/refman/5.0/en/index.html
http://dev.mysql.com/doc/refman/5.1/en/index.html

In the 3.23/4.0/4.1 doc, it's true that the syntax diagrams cover only
the 4.1 syntax, but if you read the text of the docs, there are
numerous places where they clarify the exact version a feature was
introduced.

Postgres supports transactions, subselects, foreign keys, constraints,
updatable views (via RULES or TRIGGERS) and stored procedures/functions
in several languages - all in the standard configuration.

MySQL 5.0 supports these features (except updatable views) in its
standard configuration. That is, the default storage engine in recent
versions is InnoDB, which supports the features you mention.

Subqueries have been supported since MySQL 4.1, the production release
of which was October 2004. MySQL 4.0 and earlier versions don't
support subqueries, that's true. But those earlier versions are now
so old that MySQL has discontinued support for them. How many years
does a feature need to be in the product before it is considered to be
a standard, supported feature?

By the same argument I could cite PostgreSQL's lack of support for
Windows. :-)
(To be clear, I'm referring to the fact that at one time in the
distant past, PostgreSQL did not offer a Windows binary, but of course
today they do.)

Postgres gives you meaningful error messages most of the time. MySQL
mostly just says "You have an error in your SQL syntax;"

Yes, that is part of the MySQL error message... and it's followed by
the context in the SQL statement where the error occurred.

I don't work for MySQL, but I feel like sometimes people don't give
that product a fair chance. You should judge it based on its current
version, not versions that are 3+ years out of date.

Regards,
Bill Karwin

.



Relevant Pages

  • RE: Postgres, MySQL, and Firebird.
    ... Well since I neglected to mention what those features are I guess I ... MySQL doesn't support subselects which will come in very handy for many ... Firebird has them. ... It's threading model seems better than Postgres. ...
    (RedHat)
  • Re: PostgreSQL or MySQL ?
    ... I'm not going to argue that PostgreSQL isn't superior technology, ... This is the case for MySQL now too. ... MySQL 5.0 supports these features in its ... so old that MySQL has discontinued support for them. ...
    (comp.databases)
  • Re: OT - Re: IS it possible to connect to a MySQL database in asp?
    ... > what rdbms features doesn't it have? ... For the free/unrestricted versions of MySQL, ... failover/clustering support ...
    (microsoft.public.inetserver.asp.db)
  • Re: MySQL5 & PHP5
    ... See my other message in reply to Tony Reed - unless you recompile PHP, ... but just recompiled against a later MySQL version. ... client actually makes any difference - you won't get any new features ...
    (comp.lang.php)
  • Re: Delphi 2006 SP2 feature request
    ... > What I'd really like to see is MySQL 4.1 and MySQL 5.0 support. ... MySQL 5.0 have a lof of features like store procedures, ... parameter binding using new API and replace all old API with new api ... Then many work is necessary to support MySQL 5 to update 2 is very ...
    (borland.public.delphi.non-technical)