tp10
tp10
tp10
Tp n°10
(Java)
Connexion à une base de données
Pour établir une connexion à une base de données sous Eclipse, il faut télécharger le driver
sql et l'ajouter dans la liste des librairies référencées. On procède par la suite par la création
d'une base de données à travers le client PhpMyAdmin. On peut alors se connecter à la
base de données et manipuler les données à travers le JDBC.
Pour ce faire nous allons suivre les étapes suivantes
1.Télécharger le JDBC
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
a. Les requêtes d'interrogation SQL sont exécutées avec les méthodes d'un objet
Statement que l'on obtient à partir d'un objet Connection. Pour une requête de
type interrogation (SELECT), la méthode à utiliser de la classe Statement est
executeQuery(). Pour des traitements de mise à jour, il faut utiliser la méthode
executeUpdate(). Lors de l'appel à la méthode d'exécution, il est nécessaire de
lui fournir en paramètre la requête SQL sous forme de chaine.
Le résultat d'une requête d'interrogation est renvoyé dans un objet de la classe
ResultSet par la méthode executeQuery().
Exemple de code :
ResultSet résultats = null;
String requete = "SELECT * FROM EMPLOYES";
try {
Statement stmt = con.createStatement();
résultats = stmt.executeQuery(requete);
} catch (SQLException e) {
//traitement de l'exception}
b. La classe ResultSet est une classe qui représente une abstraction d'une table qui
se compose de plusieurs enregistrements constitués de colonnes qui contiennent
les données. Les principales méthodes pour obtenir des données sont :
Méthode Rôle
retourne sous forme d'entier le contenu de la colonne dont le numéro est passé
getInt(int)
en paramètre.
retourne sous forme d'entier le contenu de la colonne dont le nom est passé en
getInt(String)
paramètre.
getFloat(String retourne sous forme d'un nombre flottant le contenu de la colonne dont le nom
) est passé en paramètre.
retourne sous forme de date le contenu de la colonne dont le numéro est passé
getDate(int)
en paramètre.
getDate(String retourne sous forme de date le contenu de la colonne dont le nom est passé en
) paramètre.
next() se déplace sur le prochain enregistrement : retourne false si la fin est atteinte