cx_Oracle is an open source package that covers the Python Database API specification with many additions to support Oracle advanced features.

This release:

Adds support for creating temporary CLOBs, BLOBs or NCLOBs via a new method Connection.createlob().

Adds support for binding a LOB value directly to a cursor.

Adds support for closing the connection when reaching the end of a 'with' code block controlled by the connection as a context manager. See cx_Oracle.__future__ for more information.

Was internally updated to the newest ODPI-C data access layer, which brings numerous stability fixes and code improvements including: Open statements and LOBs are tracked and automatically closed when the related connection is closed; this eliminates the need for users of cx_Oracle to track them, and removes the error "DPI-1054: connection cannot be closed when open statements or LOBs exist". Errors during implicit rollback at connection close are ignored - but if an error does occur, ensure the connection is dropped from the connection pool. This reduces app errors in cases like where a DBA has killed a session. Avoids an unnecessary round trip to the database when a connection is released back to the pool by preventing a rollback from being called when no transaction is in progress.

There was also an internal code restructure to simplify maintenance and consolidate transformations to/from Python objects.

See the Release Notes for all the fixes.

To upgrade to cx_Oracle 6.2 most users will be able to run:

python -m pip install cx_Oracle --upgrade

Spread the word!

cx_Oracle References

Home page: oracle.github.io/python-cx_Oracle/index.html

Installation instructions: cx-oracle.readthedocs.io/en/latest/installation.html

Documentation: cx-oracle.readthedocs.io/en/latest/index.html

Release Notes: cx-oracle.readthedocs.io/en/latest/releasenotes.html

Source Code Repository: github.com/oracle/python-cx_Oracle