Se vuoi creare più versioni di cx_Oracle (es:cx_Oracle10g, cx_Oracle11g, ecc.) allora dovrai modificare lo script cx_Oracle setup.py. L'ultimo passaggio dello script è una chiamata a setup(); il primo parametro è il nome del modulo da costruire. Tutto quello che devi fare è cambiare "cx_Oracle" a "cx_Oracle" + ver , dove ver è 10g , 11g , ecc. Crea diversi script e codificalo, oppure aggiungi un altro parametro a setup.py per selezionarlo dinamicamente.
Ovviamente, una volta ottenuto questo, è necessario un meccanismo per caricare il modulo corretto in fase di esecuzione. Per farlo ti consigliamo di creare il tuo cx_Oracle modulo che ha un __init__.py file simile a questo:
try:
from cx_Oracle9g import *
except ImportError:
try:
from cx_Oracle10g import *
except ImportError:
try:
from cx_Oracle11g import *
Tutto quello che devi fare è spedire il tuo cx_Oracle personalizzato modulo più il corretto cx_OracleXg modulo con la tua applicazione.
In alternativa, potresti avere il tuo cx_Oracle personalizzato modulo controlla dinamicamente ogni libreria client Oracle disponibile (9g, 10g, 11g, ecc.) e quindi importa solo la corrispondenza corretta cx_OracleXg modulo. In questo caso, devi spedire un solo file binario, contenente il tuo cx_Oracle personalizzato modulo più tutto il cx_OracleXg moduli.