Le driver OCI
Le driver Thin
Utilisation du driver OCI
Utilisation du driver Thin
Oracle dans sa version 8 (8.0.4
et plus) met à disposition deux drivers JDBC. Le driverJDBC OCI
et le driver JDBC Thin.
Le driver
JDBC OCI
C'est un driver de type 2. Il fournit une implémentation
des interfaces JDBC en utilisant OCI (Oracle Call Interface) pour interagir
avec une base de données Oracle. Parce qu'il utilise des méthodes
natives, il est spécifique à une plate-forme. Les plates-formes
supportées sont Solaris (2.5 et plus), Win95 et WinNT (3.51 et
plus). Ce driver requière l'installation d'un client Net8
sur le poste client.
Le driver
JDBC Thin
C'est un driver de type 4. Il utilise directement les sockets Java
pour se connecter directement à la base. Il fournit sa propre implémentation
de Net8 en TCP/IP. Le driver est entièrement écrit en Java,
c'est pour cette raison qu'il est complètement indépendant
de la plate-forme. Le driver Thin ne requière pas de logiciel côté
client, à l'inverse de l'OCI. Il nécessite uniquement un
listener TCP/IP côté serveur.
L'avantage du driver Thin est qu'on peut écrire des applets
qui sont téléchargeables dans un navigateur, vu qu'il ne
nécessite aucune appli côté client. Par contre le
driver OCI, lui, utilise des méthodes natives, qui font que les
applets ne fonctionneront pas.
La première chose à
faire est d'installer le driver côté serveur. Pour cela,
utilisez l'Oracle Installer et installez "Oracle8 JDBC Drivers 8.0.5.0.0".
Utilisation
du driver OCI
Par exemple, si on veut se connecter à une base sur la machine
"myhost" qui a un listener TCP/IP sur le port 1521 et un SID
(System Identifier) "orcl", l'url aura cette forme :
DriverManager.getConnection("jdbc:oracle:oci8:@(description=(address=(host=
myhost)(protocol=tcp)(port=1521))(connect_data=(sid=orcl)))", "scott",
"tiger");
import java.sql.*;
class JdbcTest {
public static void main (String args []) throws
SQLException {
// Load Oracle driver
DriverManager.registerDriver
(new oracle.jdbc.driver.OracleDriver());
// Connect to the local
database
Connection conn = DriverManager.getConnection
("jdbc:oracle:oci8:@mydatabase", "scott", "tiger");
// Query the employee
names
Statement stmt = conn.createStatement
();
ResultSet rset = stmt.executeQuery
("select ename from emp");
// Print the name out
while (rset.next ()) System.out.println (rset.getString (1));
}
}
Utilisation
du driver Thin
Par exemple, si on
veut se connecter à une base sur la machine "myhost"
qui a un listener TCP/IP sur le port 1521 et un SID (System Identifier)
"orcl", l'url aura cette forme :
DriverManager.getConnection ("jdbc:oracle:thin:@myhost:1521:orcl", "scott",
"tiger");
import java.sql.*;
class JdbcTest {
public static void main (String args []) throws
SQLException {
// Load Oracle driver
DriverManager.registerDriver
(new oracle.jdbc.driver.OracleDriver());
// Connect to the local
database
Connection conn = DriverManager.getConnection
("jdbc:oracle:thin:@myhost:1521:orcl", "scott", "tiger");
// Query the employee
names
Statement stmt = conn.createStatement
();
ResultSet rset = stmt.executeQuery
("select ename from emp");
// Print the name out
while (rset.next ()) System.out.println (rset.getString (1));
}
}
|