Tester sa connexion Oracle via jdbc
Dans le cadre de votre activité, vous pouvez être amené à tester la connexion à votre base Oracle. Voici donc un exemple pour vous montrer comment vous connecter à la base de données Oracle via un pilote JDBC.
Vous obtenez alors un fichier OracleJDBC.class
Les arguments sont les suivants :
localhost = Le serveur Oracle
1521 = Le port de connexion à la base oracle
orcl = le sid de la base de données
scott = le login
tiger = le mot de passe
Si la connexion est ok, vous obtenez l'affichage suivant :
ORACLE HOST : localhost
ORACLE PORT : 1521
ORACLE SID : orcl
LOGIN : scott
PASSWORD : tiger
*** Test de connexion Oracle via JDBC ***
jdbc:oracle:thin:@localhost:1521:orcl | login : scott Password : tiger
Connexion OK
Si la connexion n'est pas possible, vous obtenez l'affichage suivant (par exemple) :
ORACLE HOST : localhost
ORACLE PORT : 1521
ORACLE SID : orcl
LOGIN : scott
PASSWORD : tiger
*** Test de connexion Oracle via JDBC ***
jdbc:oracle:thin:@localhost:1521:orcl | login : scott Password : tiger
ERROR : Echec de connexion
java.sql.SQLException: Listener refused the connection with the following error:
ORA-12505, TNS:listener does not currently know of SID given in connect descriptor
Notez que vous pouvez obtenir toutes sortes d'erreurs :
ERROR : Echec de connexion
java.sql.SQLRecoverableException: Erreur d'E/S: Invalid number format for port number
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:673)
at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:715)
at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:385)
at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:30)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:564)
at java.sql.DriverManager.getConnection(DriverManager.java:571)
at java.sql.DriverManager.getConnection(DriverManager.java:215)
at OracleJDBC.main(OracleJDBC.java:35)
Caused by: oracle.net.ns.NetException: Invalid number format for port number
at oracle.net.resolver.AddrResolution.resolveSimple(AddrResolution.java:571)
at oracle.net.resolver.AddrResolution.resolveAndExecute(AddrResolution.java:441)
at oracle.net.ns.NSProtocol.establishConnection(NSProtocol.java:594)
at oracle.net.ns.NSProtocol.connect(NSProtocol.java:229)
at oracle.jdbc.driver.T4CConnection.connect(T4CConnection.java:1360)
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:486)
1. Téléchargez le driver JDBC Oracle
Pour télécharger le driver JDBC, une visite sur le site d’oracle s’impose. Vous pouvez télécharger le driver ojdbc6.jar ou ojdbc7.jar. La version 6 fonctionne avec du java 6. La version 7 avec du java 7. Dans mon cas, je souhaite tester ma connexion Oracle dans le cadre de son utilisation avec SAS 9.4. SAS 9.4 utiliser Java 7, je télécharge donc .... (suspense)... ojdbc7.jar 2. Téléchargez la classe OracleJDBC Il s'agit d'un classe toute simple que vous pourrez utiliser/modifier pour tester votre connexion.Téléchargez le fichier OracleJDBC.java en cliquat sur le bouton ci-dessous :
Note : Je ne suis pas développeur java. Donc ..... keep calm si vous saignez des yeux à la lecture de mon code.
3. Compilez cette class java
Pour la compilation, nous allons utiliser le compilateur javac, logique pour compiler un progamme java... Pour la petite histoire, le compilateurutilise un fichier source Java fourni en paramètre, dans notre cas OracleJDBC.java, pour créer un ou plusieurs fichiers contenant le bytecode Java correspondant. Dans mon cas, j'utilse le compilateur fournit avec SAS 9.4 :
1 |
SASHome/SASPrivateJavaRuntimeEnvironment/9.4/bin/javac OracleJDBC.java |
4. Run it
Dernière étape, celle qui nous intéresse, le lancement du programme. La syntaxe est la suivante :
1 |
SASHome/SASPrivateJavaRuntimeEnvironment/9.4/jre/bin/java -cp /tmp/ojdbc7.jar:/tmp OracleJDBC localhost 1521 orcl scott tiger |