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

JDBC 更新记录

Cette section fournit des exemples sur la manière d'utiliser une application JDBC pour mettre à jour les enregistrements d'un tableau. 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 noms d'utilisateur et de mot de passe réels.

  • Votre MySQL ou toute autre base de données que vous utilisez est 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, vous devez exécuter les étapes suivantes-

  • Import du paquet:Il vous est demandé d'inclure le paquet contenant les classes JDBC nécessaires à la programmation de base de données. Habituellement, utilisez import java.sql.* C'est tout.

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

  • Établir une connexion:Il est nécessaire d'utiliser DriverManager.getConnection() Méthode pour créer un objet Connection, qui représente la 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 générer et soumettre des requêtes SQL pour mettre à jour les enregistrements d'un tableau. Cette requête utilise des clauses IN et WHERE pour mettre à jour les enregistrements conditionnels.

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

Code d'exemple

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

//步骤1.Import des bibliothèques 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/STUDENTS";
   //  base de données credentials
   static final String USER = "username";
   static final String PASS = "password";
   
   public static void main(String[] args) {
   Connection conn = null;
   Statement stmt = null;
   try{
      //步骤2:注册JDBC驱动程序
      Class.forName("com.mysql.jdbc.Driver");
      //步骤3:建立连接
      System.out.println("Connecting to a selected database...");
      conn = DriverManager.getConnection(DB_URL, USER, PASS);
      System.out.println("Connected database successfully...");
      
      //步骤4:执行查询
      System.out.println("Creating statement...");
      stmt = conn.createStatement();
      String sql = "UPDATE Registration " +
                   "SET age =" 30 WHERE id in (100, 101)";
      stmt.executeUpdate(sql);
      // 现在您可以提取所有记录
      // 查看更新的记录
      sql = "SELECT id, first, last, age FROM Registration";
      ResultSet rs = stmt.executeQuery(sql);
      while(rs.next()){
         //按列名检索
         int id  = rs.getInt("id");
         int age = rs.getInt("age");
         String first = rs.getString("first");
         String last = rs.getString("last");
         //显示值
         System.out.print("ID: " + id);
         System.out.print(", Age: " + age);
         System.out.print(", First: " + first);
         System.out.println(", Last: " + last);
      }
      rs.close();
   }catch(SQLException se){
      //处理JDBC错误
      se.printStackTrace();
   }catch(Exception e){
      //处理Class.forName的错误
      e.printStackTrace();
   }finally{
      //用于关闭资源
      try{
         if(stmt!=null)
            conn.close();
      }catch(SQLException se){
      }// 没做什么
      try{
         if(conn!=null)
            conn.close();
      }catch(SQLException se){
         se.printStackTrace();
      }
   }//结束try
   System.out.println("Goodbye!");
}//结束main
}//结束JDBCExample

现在,让我们编译上面的示例,如下所示:

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

运行时JDBCExample,它将产生以下结果-

C:\>java JDBCExample
Connecting to a selected database...
Connected database successfully...
Creating statement...
ID: 100, Age: 30, First: Zara, Last: Ali
ID: 101, Age: 30, First: Mahnaz, Last: Fatma
ID: 102, Age: 30, First: Zaid, Last: Khan
ID: 103, Age: 28, First: Sumit, Last: Mittal
Goodbye!
C:\>