database in python ?

Andy Dustman farcepest at gmail.com
Thu Apr 14 18:25:44 EDT 2005


Steve Holden wrote:

> I don't know about the whole picture, but I know form evidence on
this
> group that there are PostgreSQL driver modules (the name "psycopg"
comes
> to mind, but this may be false memory) that appear to take diabolical

> liberties with DBAPI-2.0, whereas my experience with MySQLdb has been

> that I can interchange the driver with mxODBC (for example) as a
drop-in
> replacement (modulo the differing paramstyles :-().

There are a couple reasons for the interchangability: Marc-Andre
Lemburg, the author of mxODBC, was also one of the main people involed
with the DB API spec (now PEP-249). MySQLdb was also written with the
spec in mind. One reason for this is that prior to writing MySQLdb, I
used mxODBC in an application I wrote, connecting to a database called
Solid: http://www.solidtech.com/

I don't think they sell the database as a separate product any more; at
least my memory from the late 90's is that they stopped doing that.

I've also done a bit of database work with pyscopg (a few years back),
and there's not a marked difference between that and MySQLdb, as I
recall. Parameter styles are the main difference between the three
(MySQLdb and psycopg use pyformat or %s, and mxODBC uses qmark or ?).
MySQLdb-1.4/2.0 will most likely support both styles as the latter is
what MySQL expects for the Prepared Statement API that is new in 4.1.
By "support both", I mean that you'll be able to configure at run-time
which style you want to use.

For feature comparisons, check out:

http://dev.mysql.com/tech-resources/crash-me.php

These comparisons are a little old, but you can compare MySQL-4.1.1
against PostgreSQL-7.3.3 and others.

If speed is a critical factor, get both (they're free), put in some
representative data for your application, and start benchmarking.




More information about the Python-list mailing list