English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Voici un exemple qui utilise les trois requêtes suivantes ainsi que les instructions open et close-
boolean execute(String SQL):retourne true si l'objet ResultSet peut être récupéré, sinon retourne false. Utilisez cette méthode pour exécuter des instructions SQL DDL ou lorsque vous avez besoin de SQL dynamique véritable.
int executeUpdate(String SQL):retourne le nombre de lignes affectées par l'instruction SQL. Utilisez cette méthode pour exécuter des instructions SQL que vous souhaitez obtenir le nombre de lignes affectées, par exemple INSERT, UPDATE ou DELETE statements.
ResultSet executeQuery(String SQL):retourne un objet ResultSet. Utilisez cette méthode pour obtenir un ensemble de résultats, comme avec une instruction SELECT.
Ce code d'exemple est écrit en fonction de l'environnement et des paramètres de la base de données des chapitres précédents.
Copiez et collez l'exemple suivant dans JDBCExample.java, puis compilez et exécutez :
//Étape1.importer les packages nécessaires import java.sql.*; public class JDBCExample { // Nom du pilote JDBC et URL de la base de données static final String JDBC_DRIVER = "com.mysql.jdbc.Driver"; static final String DB_URL = "jdbc:mysql://localhost/EMP"; // Preuves de base de données static final String USER = "username"; static final String PASS = "password"; public static void main(String[] args) { Connection conn = null; Statement stmt = null; try{ //Étape2:enregistre le pilote JDBC Class.forName("com.mysql.jdbc.Driver"); //Étape3:Établir la connexion System.out.println("Connexion à la base de données..."); conn = DriverManager.getConnection(DB_URL,USER,PASS); //Étape4:Exécuter la requête System.out.println("Création de l'état..."); stmt = conn.createStatement(); String sql = "UPDATE Employees set age="30 WHERE id=103"; // Voyons si elle retourne un jeu de résultats réel. Boolean ret = stmt.execute(sql); System.out.println("Valeur de retour : " + ret.toString()); // Mis à jour ID = 103des enregistrements d'âge ; int rows = stmt.executeUpdate(sql); System.out.println("Lignes impactées : " + rows ); // Sélectionnons tous les enregistrements et affichons-les. sql = "SELECT id, first, last, age FROM Employees"; ResultSet rs = stmt.executeQuery(sql); //Étape5:Extraire les données du jeu de résultats while(rs.next()){ //Recherche par nom de colonne int id = rs.getInt("id"); int age = rs.getInt("age"); String first = rs.getString("first"); String last = rs.getString("last"); //Afficher la valeur System.out.print("ID : " + id); System.out.print(", Âge : " + age); System.out.print(", Premier : " + first); System.out.println(", Dernier : " + last); } //Étape6:Nettoyer l'environnement rs.close(); catch(SQLException se conn.close(); }catch(SQLException se){ //Gérer les erreurs JDBC se.printStackTrace(); }catch(Exception e){ //Gérer l'erreur de Class.forName e.printStackTrace(); }finally{ //Pour fermer les ressources try{ stmt.close(); catch(SQLException se }2{ } try{ if(conn!=null) conn.close(); }catch(SQLException se){ se.printStackTrace(); } } System.out.println("Au revoir !"); }//Fin main }//Fin JDBCExample
Compilons maintenant l'exemple ci-dessus, comme suit :
C:\>javac JDBCExample.java C:\>
En mode exécutionJDBCExampleIl produira les résultats suivants :-
C:\>java JDBCExample Connexion à la base de données... Création de l'instruction... La valeur de retour est : faux Lignes impactées : 1 ID: 100, Âge: 18, Premier: Zara, Dernier: Ali ID: 101, Âge: 25, Premier: Mahnaz, Dernier: Fatma ID: 102, Âge: 30, Premier: Zaid, Dernier: Khan ID: 103, Âge: 30, Premier: Sumit, Dernier: Mittal Au revoir ! C:\>