Oracle has released a new version of the Python interface for Oracle Database. The new version supports Python 3.6 and Oracle client 12.2.
Some of the changes to this version are specific to Oracle Database 12c features, but the majority of improvements are more general. cx_Oracle 5.3 works with Python version 2.7, and with versions 3.4 and higher. The release is also the point at which cx_Oracle's source code repository and home page move to GitHub.
Much of the work on the updated version has been carried out by Anthony Tuininga, who developed the original cx_Oracle while working at Computronix. He has continued working on the interface since joining Oracle.
Alongside the support for Python 3.6 and Oracle client 12.2, the new version adds support for direct binding to SQL objects, which enables you to carry out actions such as binding Python objects to Oracle Spatial SDO objects. You can also now bind PL/SQL records and collections.
Support for scrollable cursors has been added so you can move through your query results both forwards and backwards, Advanced queuing has also been added, so you can specifically add and remove objects to queues. The suggestion is that this means you can use database notifications to build micro-service applications.
Another addition is the ability to fetch PL/SQL implicit results, making it easier to return query results from PL/SQL.
One nice addition is Transaction Guard support. This lets you verify the status of transactions after unplanned server outages, so avoiding problems caused by transactions that were part way through but failed to complete.
A final improvement worth mentioning is support for statement caching, which lets you reduce the costs of frequently executed statements. This is now available with all connections.
Alongside cx_Oracle 5.3, Tuininga has been working on ODPI-C, an open source library of C code that simplifies and standardizes the use of common Oracle Call Interface (OCI) features, such as those used by cx_Oracle. This was recently released on Github, and the master branch of cx_Oracle code has been updated to use it.
Raspberry Pi recently celebrated its 5th birthday and during the celebrations Eben Upton, founder of the Raspberry Pi Foundation announced that it had become the third best selling general purpos [ ... ]