vlambda博客
学习文章列表

Java连接MySQL数据库并实现数据库的增删改查

 Java连接数据库并对数据库进行操作是最为常用的功能,今天跟大家一起简单实现下。

  首先我们要在数据库中建一个表,我使用的是Navicat for mysql,设定主键和类型:

  注意,为了以后在增添时,能够ID实现自增,所以在设计表时,要对主键ID设立自动递增,如图所示:

Java连接MySQL数据库并实现数据库的增删改查

https://downloads.mysql.com/archives/c-j/

Java连接MySQL数据库并实现数据库的增删改查

选择合适的版本,我这里下的是mysql的 8.0.24.

之后我们打开编译器,创建lib目录,将刚才下载的jar包,直接粘贴到lib中:

Java连接MySQL数据库并实现数据库的增删改查

下一步就是连接数据库:

        //  加载驱动 Class.forName("com.mysql.cj.jdbc.Driver"); // 获取连接 String url = "jdbc:mysql://localhost:3306/user?useUnicode=true&characterEncoding=UTF-8&useSSL=false"; String user = "root"; String password = "123456";

第4行中3306为mysql的接口号,sql server数据库为1433 ,3306后面的user为自己创建的表名,第五行和第六行都是默认的root和密码。

接下来为查询语句:

 查询 String sql1 = "select * from User1"; Statement statement = connection.createStatement(); ResultSet resultSet = statement.executeQuery(sql1); System.out.println(resultSet);
while(resultSet.next()){// 下标或者字段 int id = resultSet.getInt("id"); String name = resultSet.getString("name"); String mobile= resultSet.getString("mobile"); String address = resultSet.getString("address"); System.out.println(id+"-"+name+"-"+mobile+"-"+address); }

将查询出的语句存入resultSet中,之后用.next判断,将其全部输出:

最后关闭通道:

// 释放资源 statement.close(); connection.close(); resultSet.close();

完整代码如下:

package JDBCTEST;
import java.sql.*;
public class Test { public static void main(String[] args) { // 加载驱动 try { Class.forName("com.mysql.cj.jdbc.Driver"); // 获取连接 String url = "jdbc:mysql://localhost:3306/user?useUnicode=true&characterEncoding=UTF-8&useSSL=false"; String user = "root"; String password = "123456";
try { // 连接对象输入三个参数 Connection connection = DriverManager.getConnection(url, user, password); System.out.println(connection);//------------------------------------------------------------// 查询 String sql1 = "select * from User1"; Statement statement = connection.createStatement(); ResultSet resultSet = statement.executeQuery(sql1); System.out.println(resultSet);
while(resultSet.next()){// 下标或者字段 int id = resultSet.getInt("id"); String name = resultSet.getString("name"); String mobile= resultSet.getString("mobile"); String address = resultSet.getString("address"); System.out.println(id+"-"+name+"-"+mobile+"-"+address); }
// ----------------------------------------------------------------
// 释放资源 statement.close(); connection.close(); resultSet.close();
} catch (SQLException e) { e.printStackTrace(); } } catch (ClassNotFoundException e) { e.printStackTrace(); }


}}

  类似于查询ResultSet resultSet = statement.executeQuery(sql1);,增删改则是使用的是如下代码:

 int count = statement.executeUpdate(sql3); System.out.println(count);

具体实现如下:

 // 连接对象输入三个参数 Connection connection = DriverManager.getConnection(url, user, password); System.out.println(connection); //定义sql语句 // 增 String sql1 = "insert into student(username,password) values ('诸葛亮','111111')"; // 删 String sql2 = "delete from student where username ='诸葛亮'"; // 改 String sql3 = "update student set username='老八' where id = 1 ";
Statement statement = connection.createStatement();// 修改这里的sql即可 int count = statement.executeUpdate(sql3); System.out.println(count);

  这里面只是将sql语句进行改变,之后输出count,如果想与前端结合,就将前端空格中输入的,放入sql语句中,注意,这里默认使用的是ID自增:

运行结果如图:

可以用Java语言实现数据库增删改查的小功能