Python has its own database API.
This is intended so that people writing wrappers around ODBC and
vendor-specific database drivers should expose the same database API
to Python. The Database Special Interest Group (DB-SIG)
maintains the database API, and has a mailing list and archives
relating to it at
Version 2.0 of this standard has just been released; we include a full copy in Appendix C. The various ODBC modules we demonstrate in this chapter conform closely to the standard, so we will confine ourselves here to a brief discussion of what it encompasses:
Connection objects manage a connection to the database. They can be opened and closed, and can commit and roll back transactions. They may offer methods or properties to set global aspects of the connection, such as transaction behavior. Everything else is done through cursor objects.
These manage the context of a single statement. Users ask the connection objects to create cursors, and assign an SQL statement to the cursor. The cursor handles control of execution and of iteration through the result set. It also defines a standard format for descriptive information about the fields in the result set. Cursors provide support for parameterized queries and prepared statements.
A database connection or module should be able to return information about its capabilities. These include:
The API level to which it conforms: ...