On Thu, Oct 21, 2004 at 03:23:28PM +0100, Paul Moore wrote:
On Thu, 21 Oct 2004 11:41:30 +0200, Gerhard Haering
wrote: On Thu, Oct 21, 2004 at 11:26:12AM +0200, M.-A. Lemburg wrote:
Gerhard Haering wrote:
My point is to include a usable DB-API 2.0 implementation that people can use as a starting point when developing applications that need a relational database. Other languages do the same btw. Java (win32?) includes a JDBC driver or ODBC, and PHP5 includes a SQLite module. [...] If you are just after a "usable database driver", then I have to agree with Skip: any of the other available drivers would fit in just as well. Please clarify this.
I'm aiming at a usable DB-API implementation in the stdlib that does not need a server. I want Python to have an RDBMS interface that works OOTB, no administration required. SQLite seems the obvious choice to me, haven't looked at Gadfly in a while, and MySQLdb/MySQL embedded (GPL) has licensing issues (and adds megabytes to the Python binary download, instead of ca. 270 kB uncompressed as for SQLite).
I'm +1 on including PySQLite in the core. It would fit in the same space as Berkeley DB, *not* client-server databases like MySQL, PostgreSQL, Oracle, etc. However, it conforms to 2 important standards, SQL and the Python DB API, where Berkeley DB does not.
Agreed. Hopefully including it would encourage the random people who have found the undocumented bsddb.dbtables module to use something saner. :) Along the same lines of including PySQLite it'd also be nice to consider a good database object abstraction module such as SqlObject (http://sqlobject.sf.net/). Anything to encourage people -not- to write raw SQL inline in their code is a good thing (and makes the app much more readable and even more portable as SQL is only partially so).
I don't think that the issue of batteries included vs easier package installation is relevant here - at the moment, Python *is* "batteries included".
Also agreed. I personally think the pysqlite module bundled would get more use by more people than bsddb. -g