Size: 2326
Comment:
|
← Revision 44 as of 2017-08-07 18:24:13 ⇥
Size: 5180
Comment: changed pyodbc link from https://code.google.com/p/pyodbc to https://github.com/mkleehammer/pyodbc
|
Deletions are marked like this. | Additions are marked like this. |
Line 5: | Line 5: |
URL:: https://www.oracle.com/index.html FAQ:: https://www.orafaq.com/ Wiki:: https://www.orawiki.com/ |
URL:: https://www.oracle.com/index.html FAQ:: https://www.orafaq.com/ Wiki:: https://www.orawiki.com/ |
Line 9: | Line 9: |
license:: commercial/proprietary; free for development from [https://www.oracle.com/technology//index.html Oracle Technology Network]; [https://www.oracle.com/technology/software/products/database/xe/index.html Oracle XE] is free for production and development (and an excellent option all-around) | license:: commercial/proprietary; free for development from [[https://www.oracle.com/technology//index.html|Oracle Technology Network]]; [[https://www.oracle.com/technology/software/products/database/xe/index.html|Oracle XE]] is free for production and development (and an excellent option all-around) |
Line 19: | Line 19: |
* Requires bloated Oracle client installation on any machine that the app will run on | * Usually requires bloated Oracle client installation on any machine that the app will run on |
Line 25: | Line 25: |
=== cx_Oracle === URL:: https://cx-oracle.sourceforge.net/ licence:: [[https://cx-oracle.sourceforge.net/LICENSE.txt|BSD like]] platforms:: Unix, win32 Python versions:: 2.5 - 3.2 Oracle versions:: 10i - 11g Last release:: 5.1 (March 19, 2011) |
|
Line 32: | Line 41: |
Last release:: 1.3beta (Feb 10, 2003) | |
Line 33: | Line 43: |
=== cx_Oracle === | DCOracle2 targets Oracle 8i and up. |
Line 35: | Line 45: |
URL:: https://www.computronix.com/utilities.shtml licence:: [https://www.computronix.com/download/License(cxOracle).txt BSD like] platforms:: Unix, win32 Python versions:: 2.2 - 2.5 Oracle versions:: 8i - 11g |
There also is DCOracle (https://www.zope.org/Products/DCOracle/) for the older Oracle 7 and 8 versions, but this is unmaintained. |
Line 46: | Line 53: |
Python versions:: 2.1 - 2.5 | Python versions:: 2.4 - 2.7 |
Line 48: | Line 55: |
mxODBC is compatible with the Oracle ODBC drivers on Windows and Unix, such as the ones included in the [https://www.oracle.com/technology/tech/oci/instantclient/index.html Oracle Instance Client]. | mxODBC is compatible with the Oracle ODBC drivers on Windows and Unix, such as the ones included in the [[https://www.oracle.com/technology/tech/oci/instantclient/index.html|Oracle Instant Client]]. === pyodbc === URL:: https://github.com/mkleehammer/pyodbc License:: MIT Platforms:: Windows, Linux, MacOS X, FreeBSD, Solaris, Any (source provided) Python versions:: 2.4 - 2.6 Actively maintained Open Source project. Precompiled binaries are available for Windows. Red``Hat Enterprise Linux, Centos, and Fedora have precompiled RPMs available in their Extras repositories. === OJDBC and JayDeBeApi === URL:: https://pypi.python.domainunion.de/pypi/JayDeBeApi licence:: LGPL platforms:: Any (requires Java) Python versions:: Tested on CPython 2.6.6 and Jython 2.5.2 Oracle versions:: Any supported by Oracle's JDBC drivers (currently 8.1.7 to 11.2.0.2.0) Last release:: 0.1 (2010-08-16) No InstantClient required. Download an Oracle JDBC driver (the filename will be something like ojdbc6.jar) from the [[https://www.oracle.com/technetwork/database/features/jdbc/index-091264.html|Oracle website]], and set the classpath to include the driver. Note that if not running under Jython, JPype is required. Use code like the following: {{{#!python environ['JAVA_HOME'] = '/usr/lib/jvm/java-6-openjdk/jre' jpype.startJVM(jpype.getDefaultJVMPath(), '-Djava.class.path=ojdbc6.jar') conn = jaydebeapi.connect('oracle.jdbc.driver.OracleDriver', 'jdbc:oracle:thin:user/pass@server:1521:dbname') }}} === mxODBC Connect === URL:: https://www.egenix.com/products/python/mxODBCConnect/ License:: eGenix Commercial License 1.3.0 Platforms:: Client: all Python platforms; Server: Windows, Linux Python versions:: 2.5 - 2.7 mxODBC Connect is a commercial client-server product that allows connecting Python to ODBC compatible databases running on remote servers without requiring an ODBC driver on the client side. The product uses mxODBC on the server side and provides a highly portable Python library for the client side. As such it supports all database backend that mxODBC supports, but allows connecting to these from many different Python-supported platforms. mxODBC Connect supports asynchronous query execution via the popular [[https://www.gevent.org/|gevent package]], provides secure certificate based authentication, SSL encrypted database connections, comes with full support for stored procedures, multiple result sets, Unicode, a common interface on all platforms and implements [[https://www.egenix.com/products/python/mxODBCConnect/#Features|many other useful features]]. mxODBC Connect Server is compatible with the [[https://www.oracle.com/technology/tech/oci/instantclient/index.html|Oracle Instant Client]] ODBC drivers. |
Line 54: | Line 103: |
* ["Zope"] * an Oracle (DCOracle and DCOracle2) driver exists for ["PyDO"] (Python Data Objects) |
* [[Zope]] * an Oracle (DCOracle and DCOracle2) driver exists for [[PyDO]] (Python Data Objects) |
Line 59: | Line 108: |
[https://www.orafaq.com/forum Oracle Forum] | [[https://www.orafaq.com/forum|Oracle Forum]] |
Line 61: | Line 110: |
Oracle Wiki's: [https://www.orafaq.com/wiki English] [https://www.oracle-10g.de/oracle-wiki German] | Oracle Wiki's: [[https://www.orafaq.com/wiki|English]] [[https://www.oracle-10g.de/oracle-wiki|German]] |
Line 63: | Line 112: |
Oracle Documentation: [https://www.oracle-doku.de/oracle_10g_documentation/index.htm 10g] [https://www.oracle-doku.de/oracle_9i_documentation/index.htm 9i] [https://www.oracle-doku.de/oracle_8i_documentation/index.htm 8i] [https://www.oracle-doku.de/oracle_7_documentation/index.htm 7] | Oracle Documentation: [[https://www.oracle-doku.de/oracle_10g_documentation/index.htm|10g]] [[https://www.oracle-doku.de/oracle_9i_documentation/index.htm|9i]] [[https://www.oracle-doku.de/oracle_8i_documentation/index.htm|8i]] [[https://www.oracle-doku.de/oracle_7_documentation/index.htm|7]] |
Oracle
- URL
- FAQ
- Wiki
- Wikipedia
- license
commercial/proprietary; free for development from Oracle Technology Network; Oracle XE is free for production and development (and an excellent option all-around)
- platforms
- Unix, Linux, win32, win64
Pros
- Reputation for being capable of handling large scale databases
- Typically the database system others compare themselves to
Cons
- Usually requires bloated Oracle client installation on any machine that the app will run on
- Frequently the subject of migration discussions (to alternatives), usually for reasons of cost
DB API 2.0 Drivers
cx_Oracle
- URL
- licence
- platforms
- Unix, win32
- Python versions
- 2.5 - 3.2
- Oracle versions
- 10i - 11g
- Last release
- 5.1 (March 19, 2011)
DCOracle2
- URL
- licence
- ZPL
- platforms
- Unix, win32
- Python versions
- Last release
- 1.3beta (Feb 10, 2003)
DCOracle2 targets Oracle 8i and up.
There also is DCOracle (https://www.zope.org/Products/DCOracle/) for the older Oracle 7 and 8 versions, but this is unmaintained.
mxODBC
- URL
- Licence
- eGenix Commercial License
- Platforms
- Windows, Linux, MacOS X, FreeBSD, Solaris, AIX
- Python versions
- 2.4 - 2.7
mxODBC is compatible with the Oracle ODBC drivers on Windows and Unix, such as the ones included in the Oracle Instant Client.
pyodbc
- URL
- License
- MIT
- Platforms
- Windows, Linux, MacOS X, FreeBSD, Solaris, Any (source provided)
- Python versions
- 2.4 - 2.6
Actively maintained Open Source project.
Precompiled binaries are available for Windows. RedHat Enterprise Linux, Centos, and Fedora have precompiled RPMs available in their Extras repositories.
OJDBC and JayDeBeApi
- URL
- licence
- LGPL
- platforms
- Any (requires Java)
- Python versions
- Tested on CPython 2.6.6 and Jython 2.5.2
- Oracle versions
- Any supported by Oracle's JDBC drivers (currently 8.1.7 to 11.2.0.2.0)
- Last release
- 0.1 (2010-08-16)
No InstantClient required. Download an Oracle JDBC driver (the filename will be something like ojdbc6.jar) from the Oracle website, and set the classpath to include the driver. Note that if not running under Jython, JPype is required. Use code like the following:
mxODBC Connect
- URL
- License
- eGenix Commercial License 1.3.0
- Platforms
- Client: all Python platforms; Server: Windows, Linux
- Python versions
- 2.5 - 2.7
mxODBC Connect is a commercial client-server product that allows connecting Python to ODBC compatible databases running on remote servers without requiring an ODBC driver on the client side. The product uses mxODBC on the server side and provides a highly portable Python library for the client side. As such it supports all database backend that mxODBC supports, but allows connecting to these from many different Python-supported platforms.
mxODBC Connect supports asynchronous query execution via the popular gevent package, provides secure certificate based authentication, SSL encrypted database connections, comes with full support for stored procedures, multiple result sets, Unicode, a common interface on all platforms and implements many other useful features.
mxODBC Connect Server is compatible with the Oracle Instant Client ODBC drivers.
Supported Python Applications