English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

子句 LIKE JDBC

Cette section fournit des exemples sur la manière d'utiliser une application JDBC pour sélectionner des enregistrements à partir d'une table. Lors de la sélection d'enregistrements à partir d'une table, LIKE clause ajoute d'autres conditions. Assurez-vous d'avoir les conditions suivantes avant d'exécuter l'exemple suivant :

  • Pour exécuter l'exemple suivant, vous pouvez copierNom d'utilisateuretMot de passeRemplacez par les utilisateurs et mots de passe réels.

  • Votre MySQL ou toute autre base de données que vous utilisez est déjà démarrée et en cours d'exécution.

Étapes nécessaires

Pour créer une nouvelle base de données avec une application JDBC, il est nécessaire d'exécuter les étapes suivantes-

  • Importation des packages:Il vous est demandé d'inclure le package contenant les classes JDBC nécessaires à la programmation de base de données. Habituellement, utilisez import java.sql.* C'est suffisant.

  • Enregistrement du pilote JDBC: Il vous est demandé d'initialiser le pilote pour pouvoir ouvrir un canal de communication avec la base de données.

  • Établir la connexion:Il est nécessaire d'utiliser DriverManager.getConnection() La méthode pour créer un objet Connection qui représente une connexion physique au serveur de base de données.

  • Exécuter la requête:Il est nécessaire d'utiliser un objet de type Statement pour construire et soumettre des requêtes SQL pour obtenir des enregistrements à partir de tables satisfaisant des conditions données. Cette requête utiliseLIKELa clause WHERE sélectionne les enregistrements pour sélectionner tous les étudiants whose noms commencent par «za».

  • Nettoyer l'environnement: Il est nécessaire de fermer explicitement toutes les ressources de base de données, plutôt que de dépendre du回收站de JVM.

Code d'exemple

Copiez et collez l'exemple suivant dans JDBCExample.java, compilez et exécutez comme suit-

//étape1.importation des packages nécessaires
import java.sql.*;
public class JDBCExample {
   // Nom du pilote JDBC et URL de base de données
   static final String JDBC_DRIVER = "com.mysql.jdbc.Driver";  
   static final String DB_URL = "jdbc:mysql://localhost/STUDENTS";
   //  Identifiants 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:enregistrement du pilote JDBC
      Class.forName("com.mysql.jdbc.Driver");
      //étape3:établir la connexion
      System.out.println("Connection à une base de données sélectionnée...");
      conn = DriverManager.getConnection(DB_URL, USER, PASS);
      System.out.println("Base de données connectée avec succès...");
      
      //étape4:exécuter la requête
      System.out.println("Création de l'état...");
      stmt = conn.createStatement();
      // extraire les enregistrements sans condition.
      System.out.println("Récupération des enregistrements sans condition...");
      String sql = "SELECT id, first, last, age FROM Registration";
      ResultSet rs = stmt.executeQuery(sql);
      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(", Age: " + age);
         System.out.print(", Premier: " + first);
         System.out.println(", Dernier: " + last);
      }
      // sélectionner tous les ID égaux ou supérieurs à101d'enregistrements
      System.out.println("Récupération des enregistrements avec condition...");
      sql = "SELECT id, first, last, age FROM Registration" +
                   " WHERE first LIKE '%za%' ";
      rs = stmt.executeQuery(sql);
      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(", Age: " + age);
         System.out.print(", Premier: " + first);
         System.out.println(", Dernier: " + last);
      }
      rs.close();
   }catch(SQLException se){
      //traiter les erreurs JDBC
      se.printStackTrace();
   catch(Exception e){
      //Gérer l'erreur de Class.forName
      e.printStackTrace();
   }finally{
      //Pour fermer les ressources
      try{
         if(stmt!=null)
            conn.close();
      }catch(SQLException se){
      }// Ne rien faire
      try{
         if(conn!=null)
            conn.close();
      }catch(SQLException se){
         se.printStackTrace();
      }
   }
   System.out.println("Au revoir!");
}//Fin main
}//Fin JDBCExample

Maintenant, compilons l'exemple ci-dessus, comme suit :

C:\>javac JDBCExample.java
C:\>

à l'exécutionJDBCExample, cela produira les résultats suivants-

C:\>java JDBCExample
Connexion à une base de données sélectionnée...
Base de données connectée avec succès...
Création de l'état...
Récupération des enregistrements sans condition...
ID: 100, Âge: 30, Premier: Zara, Dernier: Ali
ID: 102, Âge: 30, Premier: Zaid, Dernier: Khan
ID: 103, Âge: 28, Premier: Sumit, Dernier: Mittal
Récupération des enregistrements avec condition...
ID: 100, Âge: 30, Premier: Zara, Dernier: Ali
ID: 102, Âge: 30, Premier: Zaid, Dernier: Khan
Au revoir!
C:\>