PostgreSQL <> MySQL: first draft

Lists: pgsql-advocacy
From: Ian Barwick <barwick(at)gmx(dot)net>
To: pgsql-advocacy(at)postgresql(dot)org
Subject: PostgreSQL <> MySQL: first draft
Date: 2003-09-14 23:12:38
Message-ID: 200309150112.38981.barwick@gmx.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-advocacy


Attached are two text files:
pgsql_mysql.txt
- an annotated list of PostgreSQL features not available in MySQL;
pgsql_mysql-short.txt
- a condensed version of the above.

The document covers the major differences, though it is not
exhaustive (and full of spleling errors). Corrections, suggestions for
improvement gratefuly received. Or if someone wants to wikify it or,
whatever, fine by me ;-). I've tried to make it readble, i.e. something
to show the technically-aware PHB.

I will be away from tomorrow and though I will have Internet access
I might not have time to read the mailing list for a week or so.

It's taken me longer than I though due to other committments and partly
because of the level of involvment, I keep getting sidetracked by
interesting things in the documentation.

One area where I haven't had time to go into any detail is
MySQL's transaction model. Of particular interest would be
why it just took a MySQL InnoDB table nearly 30 minutes to
rollback about 270,000 insertions when PostgreSQL did it
almost instantly.

On a related note: since I posted the link to the MySQL gotchas
the site has unexpectedly found its way into Google and about
half the hits are from people who've pasted their MySQL error
message into the search field; and I also got a mail from MySQL
in Germany saying how well researched it is and they had comments
on three of the points which I've addressed in various ways.

Ian Barwick
barwick(at)gmx(dot)net

Attachment Content-Type Size
pgsql_mysql.txt text/plain 14.0 KB
pgsql_mysql-short.txt text/plain 7.3 KB

From: "Christopher Kings-Lynne" <chriskl(at)familyhealth(dot)com(dot)au>
To: "Ian Barwick" <barwick(at)gmx(dot)net>, <pgsql-advocacy(at)postgresql(dot)org>
Subject: Re: PostgreSQL <> MySQL: first draft
Date: 2003-09-15 02:11:15
Message-ID: 010601c37b2e$a4f3a990$2800a8c0@mars
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-advocacy

Mention partial and expressional indexes under the Indexes section - they're
biggies that MySQL doesn't have.

Chris


From: Kaarel <kaarel(at)future(dot)ee>
To: Ian Barwick <barwick(at)gmx(dot)net>
Cc: pgsql-advocacy(at)postgresql(dot)org
Subject: Re: PostgreSQL <> MySQL: first draft
Date: 2003-09-15 07:50:29
Message-ID: 3F656F45.5050004@future.ee
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-advocacy


> On a related note: since I posted the link to the MySQL gotchas
> the site has unexpectedly found its way into Google and about

Google does a good job indeed. I remembered that a link to the page was
posted but I didn't have access to my mail archive. So the natural thing
to do was to search google for 'mysql gotchas'. Guess what page came out
on top :)

Kaarel


From: Sean Chittenden <sean(at)chittenden(dot)org>
To: Ian Barwick <barwick(at)gmx(dot)net>
Cc: pgsql-advocacy(at)postgresql(dot)org
Subject: Re: PostgreSQL <> MySQL: first draft
Date: 2003-09-15 18:25:04
Message-ID: 20030915182504.GA45649@perrin.nxad.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-advocacy

> Stored Procedures
> -----------------
>
> Stored procedures are blocks of code stored and executed in
> the database backend. They are typically created in an SQL-like procedural
> language or a fourth-generation language such as Java or Perl.
>
> - MySQL has no support for any form of stored procedure. Implementation
> is planned at an unspecified future date:
> http://www.mysql.com/doc/en/ANSI_diff_Triggers.html
>
> - PostgreSQL provides mature and tested support for function creation
> in SQL and the following procedural languages:
> PL/PgSQL (PostgreSQL's own procedural language, similar
> to e.g. Oracle's PL/SQL)
> Perl
> Python
> Tcl

pl/ruby exists too:

http://moulon.inra.fr/ruby/plruby.html

-sc

--
Sean Chittenden


From: Josh Berkus <josh(at)agliodbs(dot)com>
To: Sean Chittenden <sean(at)chittenden(dot)org>
Cc: pgsql-advocacy(at)postgresql(dot)org
Subject: Way cool article
Date: 2003-09-15 23:10:59
Message-ID: 200309151610.59353.josh@agliodbs.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-advocacy

Sean,

For the list:

http://www.linuxworld.com.au/index.php?id=1482975508&fp=2&fpid=1

--
-Josh Berkus
Aglio Database Solutions
San Francisco


From: Sean Chittenden <sean(at)chittenden(dot)org>
To: Josh Berkus <josh(at)agliodbs(dot)com>
Cc: pgsql-advocacy(at)postgresql(dot)org
Subject: Re: Way cool article
Date: 2003-09-15 23:14:52
Message-ID: 20030915231452.GC45628@perrin.nxad.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-advocacy

From: "Christopher Kings-Lynne" <chriskl(at)familyhealth(dot)com(dot)au>
To: "Sean Chittenden" <sean(at)chittenden(dot)org>, "Ian Barwick" <barwick(at)gmx(dot)net>
Cc: <pgsql-advocacy(at)postgresql(dot)org>
Subject: Re: PostgreSQL <> MySQL: first draft
Date: 2003-09-16 01:05:04
Message-ID: 021201c37bee$913f3f20$2800a8c0@mars
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-advocacy

> > - PostgreSQL provides mature and tested support for function creation
> > in SQL and the following procedural languages:
> > PL/PgSQL (PostgreSQL's own procedural language, similar
> > to e.g. Oracle's PL/SQL)
> > Perl
> > Python
> > Tcl
>
> pl/ruby exists too:
>
> http://moulon.inra.fr/ruby/plruby.html

And pljava (aka plpga):

pljava.sourceforge.net

Chris


From: Hornyak Laszlo <kocka(at)tigrasoft(dot)hu>
To: Christopher Kings-Lynne <chriskl(at)familyhealth(dot)com(dot)au>
Cc: Sean Chittenden <sean(at)chittenden(dot)org>, Ian Barwick <barwick(at)gmx(dot)net>, pgsql-advocacy(at)postgresql(dot)org
Subject: Re: PostgreSQL <> MySQL: first draft
Date: 2003-09-16 01:34:13
Message-ID: Pine.LNX.4.21.0309160321010.31951-100000@tiger.tigrasoft.hu
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-advocacy

On Tue, 16 Sep 2003, Christopher Kings-Lynne wrote:

> > > - PostgreSQL provides mature and tested support for function creation
> > > in SQL and the following procedural languages:
> > > PL/PgSQL (PostgreSQL's own procedural language, similar
> > > to e.g. Oracle's PL/SQL)
> > > Perl
> > > Python
> > > Tcl
> >
> > pl/ruby exists too:
> >
> > http://moulon.inra.fr/ruby/plruby.html
>
> And pljava (aka plpga):

:)) Yes but there is no working version of it on the network. But don`t
believe the sf.net statistics, we are working on it offline. Net
connection is too expensive :(

(The word java is trademarked both by people of Java island or Sun
microsystems inc. so we can not call it 'java'. Hopefully the 'j' wont be
a trademark of anyone.)

>
> pljava.sourceforge.net
>
> Chris
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 1: subscribe and unsubscribe commands go to majordomo(at)postgresql(dot)org
>


From: "Joshua D(dot) Drake" <jd(at)commandprompt(dot)com>
To: Hornyak Laszlo <kocka(at)tigrasoft(dot)hu>
Cc: Christopher Kings-Lynne <chriskl(at)familyhealth(dot)com(dot)au>, Sean Chittenden <sean(at)chittenden(dot)org>, Ian Barwick <barwick(at)gmx(dot)net>, pgsql-advocacy(at)postgresql(dot)org
Subject: Re: PostgreSQL <> MySQL: first draft
Date: 2003-09-16 01:53:43
Message-ID: 3F666D27.50407@commandprompt.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-advocacy

Don't forget plPHP ;)

Hornyak Laszlo wrote:

>On Tue, 16 Sep 2003, Christopher Kings-Lynne wrote:
>
>
>
>>>>- PostgreSQL provides mature and tested support for function creation
>>>> in SQL and the following procedural languages:
>>>> PL/PgSQL (PostgreSQL's own procedural language, similar
>>>> to e.g. Oracle's PL/SQL)
>>>> Perl
>>>> Python
>>>> Tcl
>>>>
>>>>
>>>pl/ruby exists too:
>>>
>>>http://moulon.inra.fr/ruby/plruby.html
>>>
>>>
>>And pljava (aka plpga):
>>
>>
>
>:)) Yes but there is no working version of it on the network. But don`t
>believe the sf.net statistics, we are working on it offline. Net
>connection is too expensive :(
>
>(The word java is trademarked both by people of Java island or Sun
>microsystems inc. so we can not call it 'java'. Hopefully the 'j' wont be
>a trademark of anyone.)
>
>
>
>
>>pljava.sourceforge.net
>>
>>Chris
>>
>>
>>---------------------------(end of broadcast)---------------------------
>>TIP 1: subscribe and unsubscribe commands go to majordomo(at)postgresql(dot)org
>>
>>
>>
>
>
>---------------------------(end of broadcast)---------------------------
>TIP 8: explain analyze is your friend
>
>


From: Robert Treat <xzilla(at)users(dot)sourceforge(dot)net>
To: Christopher Kings-Lynne <chriskl(at)familyhealth(dot)com(dot)au>
Cc: Sean Chittenden <sean(at)chittenden(dot)org>, Ian Barwick <barwick(at)gmx(dot)net>, pgsql-advocacy(at)postgresql(dot)org
Subject: Re: PostgreSQL <> MySQL: first draft
Date: 2003-09-16 12:31:49
Message-ID: 1063715509.20733.73.camel@camel
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-advocacy

On Mon, 2003-09-15 at 21:05, Christopher Kings-Lynne wrote:
> > > - PostgreSQL provides mature and tested support for function creation
> > > in SQL and the following procedural languages:
> > > PL/PgSQL (PostgreSQL's own procedural language, similar
> > > to e.g. Oracle's PL/SQL)
> > > Perl
> > > Python
> > > Tcl
> >
> > pl/ruby exists too:
> >
> > http://moulon.inra.fr/ruby/plruby.html
>
> And pljava (aka plpga):
>
> pljava.sourceforge.net
>

plr (http://www.joeconway.com/plr/)
plsh (http://developer.postgresql.org/~petere/plsh.html)
plmono (http://gborg.postgresql.org/project/plmono/projdisplay.php)

Robert Treat
--
Build A Brighter Lamp :: Linux Apache {middleware} PostgreSQL


From: Josh Berkus <josh(at)agliodbs(dot)com>
To: Robert Treat <xzilla(at)users(dot)sourceforge(dot)net>, Christopher Kings-Lynne <chriskl(at)familyhealth(dot)com(dot)au>
Cc: Sean Chittenden <sean(at)chittenden(dot)org>, Ian Barwick <barwick(at)gmx(dot)net>, pgsql-advocacy(at)postgresql(dot)org
Subject: Re: PostgreSQL <> MySQL: first draft
Date: 2003-09-16 16:42:25
Message-ID: 200309160942.25149.josh@agliodbs.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-advocacy

Guys,

Let's not re-invent the wheel here, hey?

http://techdocs.postgresql.org/guides/PLLanguages

--
Josh Berkus
Aglio Database Solutions
San Francisco