announcing adodbapi version 2.4.2 with PostgreSQL support
Recent communications on this list have encouraged me to get off my duff and finish the PostgreSQL support that I started ages ago. Thanks to William Dode and M.-A. Lemburg for the inspiration.
Whats new in version 2.4.2
1. The cursor has a new .query attribute. It returns the (possibly converted) query sent to ADO. [Thanks to William Dode.] This may be useful for testing paramstyle 'format' and 'named' queries. .query is an extension borrowed from psycopg2.
2. Added .command and .parameters attributes, which are copies of the original command and parameters sent the the cursor. 3. Added tests using a PostgreSQL server. Tests are now run for ACCESS, MS SQL, MySQL and PostgreSQL.
4. Column name data access is now case insignificant (since PostgreSQL returns lower case column names). so (if a row object 'r' contains a first column 'spam') r, r.Spam, r.spam and r['SPAM'] are all equivalent.
5. The connection has new attributes .dbms_name and .dbms_version to display the underlying database engine. (like mxODBC)
adodbapi is a Python DB-API 2.0 module that makes it easy to use Microsoft ADO for connecting with databases and other data sources
using either CPython or IronPython.
Features: * 100% DB-API 2.0 compliant. * Includes pyunit testcases that describe how to use the module.
* Fully implemented in Python. -- runs in Python 2.3+ Python 3.0+ and IronPython 2.6+ * Licensed under the LGPL license, which means that it can be used freely even in commercial programs subject to certain restrictions.
* Supports eGenix mxDateTime, Python 2.3 datetime module and Python time module. * Supports multiple paramstyles: 'qmark' 'named' 'format' * Supports data retrieval by column name e.g.: for row in myCurser.execute("select name,age from students"):
print "Student", row.name, "is", row.age, "years old" * Supports user-definable system-to-Python data convertion functions (selected by ADO data type, or by column)
* Money and Decimal column data is in decimal.Decimal format (unless you select another) -- Vernon Cole