不废话,上代码
1 package com.ningmeng;
2
3 import java.sql.*;
4
5 /**
6 * 1:更改数据库中的数据
7 * @author biexiansheng
8 *
9 */
10 public class Test04 {
11
12 public static void main(String[] args) {
13 // TODO Auto-generated method stub
14 try {
15 Class.forName("com.mysql.jdbc.Driver");//加载数据库驱动
16 System.out.println("加载数据库驱动成功");
17 String url="jdbc:mysql://localhost:3306/test";//声明数据库test的url
18 String user="root";//数据库账号
19 String password="123456";//数据库密码
20 //建立数据库连接,获得连接对象conn
21 Connection conn=DriverManager.getConnection(url, user, password);
22 System.out.println("连接数据库成功");
23 String sql="update users set age=20 where id=1 ";//生成一条mysql语句
24 Statement stmt=conn.createStatement();//创建一个Statement对象
25 stmt.executeUpdate(sql);//执行SQL语句
26 System.out.println("修改数据库成功");
27 conn.close();
28 System.out.println("关闭数据库成功");
29 } catch (ClassNotFoundException e) {
30 // TODO Auto-generated catch block
31 e.printStackTrace();
32 } catch (SQLException e) {
33 // TODO Auto-generated catch block
34 e.printStackTrace();
35 }
36
37
38 }
39
40 }
结果如下
上图对比代表修改成功,ok.
注意:
修改数据库是数据库操作必不可少的一部分,使用Statement接口中的excuteUpdate()方法可以修改数据表中的数据,也可以使用PreparedStatement接口中的excuteUpdate方法对数据库中的表进行修改操作。
1 package com.ningmeng;
2
3 import java.sql.*;
4
5 /**
6 * @author biexiansheng
7 *
8 */
9 public class Test05 {
10
11 public static void main(String[] args) {
12 // TODO Auto-generated method stub
13 try {
14 Class.forName("com.mysql.jdbc.Driver");//加载数据库驱动
15 System.out.println("加载数据库驱动成功");
16 String url="jdbc:mysql://localhost:3306/test";//声明数据库test的url
17 String user="root";//数据库账号
18 String password="123456";//数据库密码
19 //建立数据库连接,获得连接对象conn
20 Connection conn=DriverManager.getConnection(url, user, password);
21 System.out.println("连接数据库成功");
22
23 String sql="update users set password=? where sex=? ";//生成一条mysql语句
24 PreparedStatement ps=conn.prepareStatement(sql);//创建PreparedStatement对象
25 ps.setString(1, "admin");//为第一个问号赋值
26 ps.setInt(2, 0);//为第二个问号赋值
27 int count=ps.executeUpdate();//执行sql语句
28 System.out.println("修改数据库成功");
29 conn.close();
30 System.out.println("关闭数据库成功");
31
32 } catch (ClassNotFoundException e) {
33 // TODO Auto-generated catch block
34 e.printStackTrace();
35 } catch (SQLException e) {
36 // TODO Auto-generated catch block
37 e.printStackTrace();
38 }
39
40 }
41
42 }
上图对比,可知已经修改完毕
如上所示修改数据是根据一定的条件进行修改,这个条件可以是固定的,也可以是一个范围,分别是第一个,第二个案例。
第二个案例使用PreparedStatement接口中的executeUpdate()方法修改数据库users表中的数据。(将所有性别为0的用户密码改为admin,需要注意的是,我得数据表创建的时候性别是int类型的,只有0,1,2三种进行代表,所以参考案例的需要注意一下代码的修改)