Als u meerdere cx_Oracle-versies wilt bouwen (bijvoorbeeld:cx_Oracle10g, cx_Oracle11g, enz.), moet u het cx_Oracle setup.py-script wijzigen. De laatste stap in het script is een aanroep naar setup()
; de eerste parameter is de naam van de te bouwen module. Het enige wat u hoeft te doen is "cx_Oracle"
. te wijzigen naar "cx_Oracle" + ver
, waarbij ver 10g
is , 11g
, enz. Maak meerdere scripts en codeer deze hard, of voeg een andere parameter toe aan setup.py
om het dynamisch te selecteren.
Als je dat eenmaal hebt, heb je natuurlijk een mechanisme nodig om de juiste module tijdens runtime te laden. Om dat te doen, moet je je eigen cx_Oracle
. maken module met een __init__.py
bestand dat er ongeveer zo uitziet:
try:
from cx_Oracle9g import *
except ImportError:
try:
from cx_Oracle10g import *
except ImportError:
try:
from cx_Oracle11g import *
Het enige dat u hoeft te doen, is uw aangepaste cx_Oracle
. te verzenden module plus de juiste cx_OracleXg
module bij uw aanvraag.
Als alternatief kunt u uw aangepaste cx_Oracle
module dynamisch controleren op elke beschikbare Oracle-clientbibliotheek (9g, 10g, 11g, enz.) en vervolgens alleen de juiste overeenkomende cx_OracleXg
importeren module. In dit geval hoeft u slechts één binair bestand te verzenden met uw aangepaste cx_Oracle
module plus alle cx_OracleXg
modules.