[ANN] PySQLite 0.3.0 released

Bob X bobx at linuxmail.org
Thu Sep 12 21:19:01 EDT 2002


Gerhard Häring wrote:
> NAME:
>     pysqlite - Extension module for SQLite databases.
> 
> DESCRIPTION:
>     A Python-DB API 2.0 compliant extension module that connects to
>     SQLite databases.
> 
>     SQLite is a powerful, embedded relational database in a compact C library.
>     It supports a large subset of SQL92, multiple tables and indices,
>     transactions, and triggers. It has a simple C/C++ interface requiring only
>     three functions to perform queries. It has TCL bindings and an ODBC
>     driver. Sources are uncopyrighted and can be used for any purpose. More
>     information can be found at <http://www.hwaci.com/sw/sqlite/index.html>.
> 
> USAGE:
>     import sqlite
> 
>     conn = sqlite.connect("db")
>     cursor = conn.cursor()
>     SQL = """ select category, family, genus, species
>               from calflora order by genus, species limit 10"""
> 
>     cursor.execute(SQL)
> 
>     for col in cursor.description:
>             print "\t %12s - %3s bytes" % (col[0], repr(col[3]))
> 
>     row = cursor.fetchone()
> 
>     while row != None:
>             print "%14s, %15s, %19s, %8s, %25s" % tuple(row)
>             row = cursor.fetchone()
> 
>     SQL = "insert into calflora (family,genus,species) values(%s,%s,%s)"
>     cursor.execute(SQL, ('greenus', 'weedus', 'maximus')) 
> 
>     conn.close()
> 
> HOMEPAGE:
>     <http://pysqlite.sourceforge.net>
> 
> DOWNLOAD:
>     Source and Windows binary downloads are available at 
>     <http://www.sourceforge.net/projects/pysqlite>
> 
> AUTHORS:
>     Gerhard Häring <gerhard.haering at gmx.de>
>     Michael Owens <mike at mikesclutter.com>
>     William Trenker <wtrenker at shaw.ca>
> 
> LICENSE:
>     Python
> 
> NOTES:
> PySQLite has been tested on FreeBSD, Linux, and Windows with both Python 2.1 
> and 2.2. The latest versions of SQLite (v. 2.6 and greater) are recommended. 
> 
> Version 0.3.0 fixed a lot of bugs, while also adding new features. Users of
> PySQLite are recommended to upgrade.
> 
> The following are some of the changes and enhancements since the last 
> release:
> 
> - Squashed a few memory leaks.
> 
> - Exposed the sqlite_exec, sqlite_last_insert_rowid and
>   sqlite_changes functions of SQLite to Python as methods of the
>   connection object.
> 
> - Add support for Date types, if mxDateTime is
>   available.
> 
> - Support for optional DB-API extensions from PEP 0249
> 
> - Added files for creating a PySQLite Debian package.
> 
> - setup.py: - Added Cygwin as platform that's supported by default
> 
> - Added third example: program to dump a table in XML format.
> 
> - Use bool type and custom bool converter for boolean fields.
> 
> - Set cursor.rowcount appropriately after DML (insert/update/delete) 
>   statements.
> 
> - Fixed a bug with the SQL-quoting of longs.
> 
> - Inline documentation improvement.
> 
> - Change invocation of ReferenceError to work with Python 2.1
> 
> - (really) implemented weak references from cursors to connections
> 
> - Added new test suite.
> 
> - Adapted test for threadsafety attribute.
> 
> - Added checks with user-defined float and string functions.
> 
> - Removed Connection.begin(). Transactions are now started
>   implicitely.  - Use DB-API quoting instead of manual Python
>   quoting.  - Use string methods instead of the string module.
> 
> - Added checks for functions/aggreagates that raise exceptions or
>   return None (NULL).
> 
> - Added tests for proper commit/rollback behaviour. Added tests
>   for autocommit feature.
> 
> - Implemented autocommit feature. Renamed the parameter of
>   Connection.__init__ from "filename" to "db". Commit and rollback
>   now check if the connection is open at all. Started adapting the
>   weak reference code from pyPgSQL to loosely couple cursors and
>   connections. This is needed when you want to check if there are
>   any open cursors for a given connection, for example.
> 
> - Simplified version numbers, removed the check for equal version
>   numbers in _sqlite and sqlite. This looked like overhead to
>   me. The version number scheme is now only: major.minor.micro Set
>   threadsafety to level 1. I believe we can guarantee than sharing
>   the module among threads will do no harm. Sharing the connection
>   would.
Windows binary?




More information about the Python-list mailing list