Maison  >  Article  >  Java  >  Explication détaillée de la façon d'utiliser Java pour interroger, modifier et connecter MySQL

Explication détaillée de la façon d'utiliser Java pour interroger, modifier et connecter MySQL

黄舟
黄舟original
2017-07-18 09:32:011336parcourir

Cet article présente principalement comment connecter, interroger et modifier la base de données MySQL en Java. Les amis dans le besoin peuvent s'y référer

Processus général : .

 (1) Appelez la méthode Class.forName() pour charger le pilote.

 (2) Appelez la méthode getConnection() de l'objet DriverManager pour obtenir un objet Connection.

 (3) Créez un objet Statement et préparez une instruction SQL. Cette instruction SQL peut être un objet Statement (une instruction à exécuter immédiatement), une instruction PreparedStatement (une instruction précompilée) ou un objet CallableStatement (une instruction précompilée). appel de procédure stockée).

 (4) Appelez des méthodes telles que excuteQuery() pour exécuter des instructions SQL et enregistrez les résultats dans l'objet ResultSet ; ou appelez des méthodes telles que executeUpdate() pour exécuter des instructions SQL sans renvoyer les résultats de l'objet ResultSet.

(5) Effectuer l'affichage et tout autre traitement équivalent sur l'objet ResultSet renvoyé.

(6) Libérer les ressources.

1. Connectez-vous à la base de données

 (1) Téléchargez le pilote de connexion Mysql

Après le téléchargement, placez-le dans F : Informations sur la recherche doctorale Décompressez les fichiers du programme liés à l'apprentissage de la base de données MySQL.

 (2) Chargez le pilote JDBC

Méthode de fonctionnement : Dans Eclipse, sélectionnez le projet correspondant, cliquez sur Java Build Path dans Project-Properties et ajoutez mysql-connector-java- dans Libraries 5.1. .21-bin.jar, cliquez sur OK.

 (3) Créez une base de données simple comme suit :


import java.sql.*;
public class GetConnection {
  public static void main(String[] args){
    try{
      //调用Class.forName()方法加载驱动程序
      Class.forName("com.mysql.jdbc.Driver");
      System.out.println("成功加载MySQL驱动!");
    }catch(ClassNotFoundException e1){
      System.out.println("找不到MySQL驱动!");
      e1.printStackTrace();
    }
    String url="jdbc:mysql://localhost:3306/mysql";  //JDBC的URL  
    //调用DriverManager对象的getConnection()方法,获得一个Connection对象
    Connection conn;
    try {
      conn = DriverManager.getConnection(url,  "root","");
      //创建一个Statement对象
      Statement stmt = conn.createStatement(); //创建Statement对象
      System.out.print("成功连接到数据库!");
      stmt.close();
      conn.close();
    } catch (SQLException e){
      e.printStackTrace();
    }
  }
}

2. Interrogez la table de données

Lors de l'interrogation d'une table de données, vous devez utiliser l'interface ResultSet, qui est similaire à une table de données. Grâce à l'instance de cette interface, vous pouvez obtenir l'ensemble de résultats de récupération et les informations d'interface du. tableau de données correspondant.


import java.sql.*;
public class SelectTable {
  public static void main(String[] args){
    try{
      //调用Class.forName()方法加载驱动程序
      Class.forName("com.mysql.jdbc.Driver");
      System.out.println("成功加载MySQL驱动!");
      String url="jdbc:mysql://localhost:3306/aniu";  //JDBC的URL  
      Connection conn;
      conn = DriverManager.getConnection(url,  "root","");
      Statement stmt = conn.createStatement(); //创建Statement对象
      System.out.println("成功连接到数据库!");
      String sql = "select * from stu";  //要执行的SQL
      ResultSet rs = stmt.executeQuery(sql);//创建数据对象
        System.out.println("编号"+"\t"+"姓名"+"\t"+"年龄");
        while (rs.next()){
          System.out.print(rs.getInt(1) + "\t");
          System.out.print(rs.getString(2) + "\t");
          System.out.print(rs.getInt(3) + "\t");
          System.out.println();
        }
        rs.close();
        stmt.close();
        conn.close();
      }catch(Exception e)
      {
        e.printStackTrace();
      }
  }
}

3. Modifier et supprimer la base de données


//修改删除数据
import java.sql.*;
public class UpdateDeleteDemo {
  public static void main(String[] args)throws Exception{
    try{
      //调用Class.forName()方法加载驱动程序
      Class.forName("com.mysql.jdbc.Driver");
      System.out.println("成功加载MySQL驱动!");
      String url="jdbc:mysql://localhost:3306/aniu";  //JDBC的URL  
      Connection conn;
      conn = DriverManager.getConnection(url,  "root","");
      Statement stmt = conn.createStatement(); //创建Statement对象
      System.out.println("成功连接到数据库!");
      //查询数据的代码
      String sql = "select * from stu";  //要执行的SQL
      ResultSet rs = stmt.executeQuery(sql);//创建数据对象
        System.out.println("编号"+"\t"+"姓名"+"\t"+"年龄");
        while (rs.next()){
          System.out.print(rs.getInt(1) + "\t");
          System.out.print(rs.getString(2) + "\t");
          System.out.print(rs.getInt(3) + "\t");
          System.out.println();
        }
      //修改数据的代码
      String sql2 = "update stu set name=? where number=?";
      PreparedStatement pst = conn.prepareStatement(sql2);
      pst.setString(1,"8888");
      pst.setInt(2,198);
      pst.executeUpdate();
      //删除数据的代码
      String sql3 = "delete from stu where number=?";
      pst = conn.prepareStatement(sql3);
      pst.setInt(1,701);
      pst.executeUpdate();
      ResultSet rs2 = stmt.executeQuery(sql);//创建数据对象
      System.out.println("编号"+"\t"+"姓名"+"\t"+"年龄");
      while (rs.next()){
        System.out.print(rs2.getInt(1) + "\t");
        System.out.print(rs2.getString(2) + "\t");
        System.out.print(rs2.getInt(3) + "\t");
        System.out.println();
      }
      rs.close();
      stmt.close();
      conn.close();
      }catch(Exception e)
      {
        e.printStackTrace();
      }
  }
}

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn