Java连接MySQL数据库并实现数据库的增删改查
Java连接数据库并对数据库进行操作是最为常用的功能,今天跟大家一起简单实现下。
首先我们要在数据库中建一个表,我使用的是Navicat for mysql,设定主键和类型:
注意,为了以后在增添时,能够ID实现自增,所以在设计表时,要对主键ID设立自动递增,如图所示:
https://downloads.mysql.com/archives/c-j/
选择合适的版本,我这里下的是mysql的 8.0.24.
之后我们打开编译器,创建lib目录,将刚才下载的jar包,直接粘贴到lib中:
下一步就是连接数据库:
// 加载驱动
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语言实现数据库增删改查的小功能