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


如需更新 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://127.0.0.1/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 更新了数据。“Johnson”这一 Name 列已更新。以下是对照查询,借助 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 已被更新。

更新于:2019 年 7 月 30 日

3 千+ 次浏览

开启你的职业生涯

完成本课程认证

开始学习
广告