Oracle
 sql >> Database >  >> RDS >> Oracle

Java JDBC - Come connettersi a Oracle utilizzando tnsnames.ora

Non sapevo nemmeno che fosse possibile usare tnsnames con il thin driver, ma a quanto pare è stato aggiunto da qualche parte nella versione 10:

http://docs.oracle.com/cd/B19306_01/java.102/b14355/urls.htm#BEIDIJCE

In particolare:

Nota:

Quando si utilizza TNSNames con il driver JDBC Thin, è necessario impostare la proprietà oracle.net.tns_admin sulla directory che contiene il file tnsnames.ora.

java -Doracle.net.tns_admin=%ORACLE_HOME%\network\admin

Come accennato, non ho verificato se questo effettivamente funziona.

Non credo che la logica "trova la directory di configurazione di rete effettiva" sia disponibile tramite alcune funzioni Oracle. Dovrai farlo manualmente come indicato nella tua domanda, o forse fare affidamento sulla presenza della variabile di ambiente TNS_ADMIN. In tal caso, l'invocazione di java sarebbe

java -Doracle.net.tns_admin=%TNS_ADMIN%