16/11/2015
1
Evaluation et optimisation - 1
UPMC - UFR 919 Ingéniérie - Cours Bases de données I3009
I3009 Licence d’informatique
2015/2016
Introduction à JDBC
Java DataBase Connectivity = API + Driver
permettant à un programme Java d’exécuter du SQL
Package java.sql du JDK :
import java.sql.* ;
Evaluation et optimisation - 2
UPMC - UFR 919 Ingéniérie - Cours Bases de données I3009
Architecture JDBC (natif)
Appli Java
API JDBC
JDBC Driver Manager
Driver (ex. oracle)
BD
SQL
Evaluation et optimisation - 3
UPMC - UFR 919 Ingéniérie - Cours Bases de données I3009
Principales classes
Connexion => create statement
Statement (prepared, callable) => executequery
ResultSet
Data Types Etapes
Installer le driver : Class.forName("oracle.jdbc.driver.OracleDriver");
Créer une connexion
Connection.maConnection=DriverManager.getConnection(url);
Exécuter les requêtes (avec éventuellement des paramètres si prepared)
Statement.maRequeteSQL=maConnection();
ResultSet.monResultat=maRequeteSQL.executeQuery(texteRequeteSQL);
Utiliser/parcourir le résultat :
while (monResultat.next()) {
String nom = monResultat.getString(2);
int age=monResultat.getInt (1);
Evaluation et optimisation - 4
UPMC - UFR 919 Ingéniérie - Cours Bases de données I3009
Exemple de preparedstatement
•Forme générale : jdbc:sous_protocole:données_de_connexion
jdbc est le protocole
Sous protocole : par exemple oracle, oracle:thin
Données de connexion : login/passwd@server:port:bd
String selectSQL = "SELECT USER_ID, USERNAME FROM DBUSER WHERE USER_ID >= ?";
PreparedStatement PS = dbConnection.prepareStatement(selectSQL);
PS.setInt(1, 1001);
ResultSet rs = preparedStatement.executeQuery(selectSQL );
while (rs.next()) {
String userid = rs.getString("USER_ID");
String username = rs.getString("USERNAME");
reste du traitement (affichage, etc…)
} URL pour connexion
1 / 1 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !