如何使用 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 已更新。