[DB-SIG] Experiences with DB-API2.0

M.-A. Lemburg mal@lemburg.com
Mon, 24 Jun 2002 10:28:12 +0200


Magnus Lycka wrote:
> At 13:36 2002-06-21 -0700, Dustin Sallings wrote:
> 
>> java, perl,
>> ruby, etc... each has a database API providing common access across
>> multiple databases.
> 
> 
> I'm curious: Can anyone share some experiences concerning
> Perl::DBI, JDBC etc. Do they limit the programmer, so that
> vendor specific SQL extensions can't be used?
> 
> Are they very complex?
> 
> Do they have a significant negative impact on performance
> compared to native drivers?
> 
> I certainly think it would be good to have a uniform
> way to speak to databases. And I would love to be able
> to use it with Python. :-)
> 
> Might JDBC possibly be the way to go, if ODBC is such
> a nightmare? It might be clever not to invent the wheel
> once more.

Right. JDBC does a pretty job at providing a logical
interface to databases. It uses the concept driver - interface,
but that can easily be had in Python since our drivers
are the DB API modules.

We would need some more standard data types for this,
though, e.g. a fixed decimal point type.

> At 20:32 2002-06-21 +0200, M.-A. Lemburg wrote:
>  > In reality you'll rarely have to switch database backends for
>  > applications and if you do, you'll make sure that the effort
>  > needed to do this will be minimal (or well-payed ;-).
> 
> But we might have the same application running at different
> locations, for different customers, who don't want a different
> RDBMS for every applications they have bought. Ok, today few will
> buy anything else than MS SQL Server, Oracle or DB2, but they
> might have Informix, Sybase etc since years back, and might
> not want to change right now...
> 
> Also, In my consulting, I tend to emphasize the importance of vendor
> independence. After all, I make a point of programming in a very
> high level language which is very platform independent and also
> free. Having the lowest possible cost in switching for instance
> databases is a sales argument for me. I realize that there are a
> number of other costs in such an effort--data conversion, DBA
> training etc, but I still find it valuable to make the switch as
> simple as possible from a programming point of view.
> 
> I recently worked for a large government agency that switched from
> Oracle to DB2 half way into a project, since the licence fees differed
> by a magnitude! This was a large system with tens of thousands of
> users, and the amount of money saved here certainly paid for a lot of
> programming efforts, but most customers are much smaller than this.

-- 
Marc-Andre Lemburg
CEO eGenix.com Software GmbH
______________________________________________________________________
Company & Consulting:                           http://www.egenix.com/
Python Software:                   http://www.egenix.com/files/python/
Meet us at EuroPython 2002:                 http://www.europython.org/