JDBC (Java Data Base Connectivity): API Java pour accéder

publicité
Accès aux bases de données en Java
-
JDBC (Java Data Base Connectivity): API Java pour accéder aux BD
-
Pour pouvoir utiliser JDBC, il faut un pilote qui est spécifique à la base à laquelle on veut
accéder
-
ODBC standard Windows pour accéder aux BD
-
Avec JDK, SUN fournit un pilote qui permet JDBC/ODBC qui permet d’accéder aux BD
via ODBC
- Etapes d’accès à une BD
-
Enregistrer la BD dans ODBC
1.
2.
3.
4.
Panneau de configuration
Outils d’administration
Sources de données ODBC
Ajouter la BD
-
Utiliser le package java.sql
-
La première étape consiste à charger le pilote JDBC/ODBC
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(ClassNotFoundException e)
{
}
-
La second étape consiste à se connecter à la base
Pour avoir une connexion il faut disposer d’un objet Connection. La méthode
getConnection(nom) de la classe DriverManager permet de se connecter à
une BD et de renvoyer un objet Connection.
Le nom est composé du protocole :sous protocole : nomBD
Exemple
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection c = DriverManager.getConnection("jdbc:odbc:BD1");
}
catch(SQLException e)
{
}
-
La troisième étape consiste à exécuter une requête SQL
Pour exécuter une requête il faut utiliser la classe Statement. Pour cela on utilise
la méthode createStatement() de Connection. Pour une requête de type
interrogation (SELECT) on utilise la méthode executeQuery(String requête) de
Statement. Pour une mise à jour on utilise la méthode executeUpdate(String
miseAjour).La méthode executeQuery() renvoie un objet ResultSet qui
correspond au résultat de la requête.
Exemple
Statement st = c.createStatement();
String requete = "SELECT * FROM Client;";
ResultSet resultat = st.executeQuery(requete);
}
catch(SQLException e)
{
}
-
La quatrième étape consiste à consulter le résultat de la requête SQL :
La classe ResultSet représente une abstraction d’une table qui se compose de
plusieurs enregistrements constitués de colonnes qui contiennent des données.
Les principales méthodes pour obtenir des données sont :
-
getInt(int) retourne le contenu de la colonne dont le numéro est passé en
paramètre sous forme d’entier
getFloat(int)
getDate(int)
getString(int)
next() se déplace sur le prochain enregistrement : retourne false si la fin est
atteinte
close() ferme le ResultSet
Pour obtenir de plus amples informations concernant la requête, par exemple pour
connaître le nombre de colonnes, nous utilisons un objet de la classe
ResultSetMetaData. La méthode getColumnCount() de la classe
ResultSetMetaData permet de retourner le nombre de colonne.
Téléchargement