如何使用 Java 更新 MySQL 数据库中的数据?

mysqlmysqli database

要将数据更新到 MySQL 数据库表中,请使用 UPDATE 命令。语法如下 −

update yourTableName set yourColumnName1 = value1,....N where condition;

首先,我们需要创建一个表。查询如下 −

mysql> create table UpdateDemo
   -> (
   -> id int,
   -> Name varchar(200)
   -> );
Query OK, 0 rows affected (0.67 sec)

让我们将记录插入表中。以下是查询 −

mysql> insert into UpdateDemo values(101,'John');
Query OK, 1 row affected (0.19 sec)
mysql> truncate table UpdateDemo;
Query OK, 0 rows affected (0.86 sec)
mysql> insert into UpdateDemo values(1,'John');
Query OK, 1 row affected (0.13 sec)
mysql> insert into UpdateDemo values(2,'Carol');
Query OK, 1 row affected (0.13 sec)
mysql> insert into UpdateDemo values(3,'Smith');
Query OK, 1 row affected (0.18 sec)
mysql> insert into UpdateDemo values(4,'David');
Query OK, 1 row affected (0.15 sec)

现在,借助 select 语句显示表中的所有记录。查询如下 −

mysql> select *from UpdateDemo;

这是输出 −

+------+-------+
| id   | Name  |
+------+-------+
|    1 | John  |
|    2 | Carol |
|    3 | Smith |
|    4 | David |
+------+-------+
4 rows in set (0.00 sec)

以下是从 MySQL 数据库更新记录的 JAVA 代码。我们将与 MySQL 数据库建立 Java 连接 −

import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import com.mysql.jdbc.Connection;
import com.mysql.jdbc.PreparedStatement;
import com.mysql.jdbc.Statement;
public class JavaUpdateDemo {
   public static void main(String[] args) {
      Connection conn = null;
      Statement stmt = null;
      try {
         try {
            Class.forName("com.mysql.jdbc.Driver");
         } catch (Exception e) {
            System.out.println(e);
         }
         conn = (Connection) DriverManager.getConnection("jdbc:mysql://localhost/business", "Manish", "123456");
         System.out.println("Connection is created successfully:");
         stmt = (Statement) conn.createStatement();
         String query1 = "update UpdateDemo set Name='Johnson' " + "where id in(1,4)";
         stmt.executeUpdate(query1);
         System.out.println("Record has been updated in the table successfully..................");
      } catch (SQLException excep) {
         excep.printStackTrace();
      } catch (Exception excep) {
         excep.printStackTrace();
      } finally {
         try {
            if (stmt != null)
            conn.close();
         } catch (SQLException se) {}
         try {
            if (conn != null)
            conn.close();
         } catch (SQLException se) {
            se.printStackTrace();
         }
      }
      System.out.println("Please check it in the MySQL Table. Record is now updated.......");
   }
}

这是输出 −

我们更新了 ID 为 1 和 4 的数据。Name 列中的"Johnson"已更新。以下是使用 select 语句检查表数据是否已更新的查询。

mysql> select *from UpdateDemo;

以下是输出 −

+------+---------+
| id   | Name    |
+------+---------+
| 1    | Johnson |
| 2    | Carol   |
| 3    | Smith   |
| 4    | Johnson |
+------+---------+
4 rows in set (0.00 sec)

查看上面的输出,id 1 和 4 已更新。


相关文章