mysql➕java实现增删改查
时间: 2023-11-04 11:56:06 浏览: 25
好的,下面是一个简单的示例代码:
首先,建立一个名为 `Student` 的表,包含 `id`、`name`、`age` 三个字段,其中 `id` 为主键。
```sql
CREATE TABLE `Student` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(50) NOT NULL,
`age` int(11) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
```
接下来,使用 Java 连接 MySQL 数据库,并实现增删改查功能。
```java
import java.sql.*;
public class MySQLDemo {
// 数据库连接信息
private static final String URL = "jdbc:mysql://localhost:3306/test";
private static final String USER = "root";
private static final String PASSWORD = "123456";
// 增加数据
public static void insert(String name, int age) {
try {
// 加载 MySQL 驱动
Class.forName("com.mysql.jdbc.Driver");
// 建立连接
Connection conn = DriverManager.getConnection(URL, USER, PASSWORD);
// 创建 SQL 语句
String sql = "INSERT INTO Student(name, age) VALUES (?, ?)";
// 创建 PreparedStatement 对象
PreparedStatement ps = conn.prepareStatement(sql);
// 设置参数
ps.setString(1, name);
ps.setInt(2, age);
// 执行 SQL 语句
int result = ps.executeUpdate();
if (result > 0) {
System.out.println("数据插入成功!");
} else {
System.out.println("数据插入失败!");
}
// 关闭 PreparedStatement 对象和连接
ps.close();
conn.close();
} catch (ClassNotFoundException | SQLException e) {
e.printStackTrace();
}
}
// 删除数据
public static void delete(int id) {
try {
// 加载 MySQL 驱动
Class.forName("com.mysql.jdbc.Driver");
// 建立连接
Connection conn = DriverManager.getConnection(URL, USER, PASSWORD);
// 创建 SQL 语句
String sql = "DELETE FROM Student WHERE id = ?";
// 创建 PreparedStatement 对象
PreparedStatement ps = conn.prepareStatement(sql);
// 设置参数
ps.setInt(1, id);
// 执行 SQL 语句
int result = ps.executeUpdate();
if (result > 0) {
System.out.println("数据删除成功!");
} else {
System.out.println("数据删除失败!");
}
// 关闭 PreparedStatement 对象和连接
ps.close();
conn.close();
} catch (ClassNotFoundException | SQLException e) {
e.printStackTrace();
}
}
// 修改数据
public static void update(int id, String name, int age) {
try {
// 加载 MySQL 驱动
Class.forName("com.mysql.jdbc.Driver");
// 建立连接
Connection conn = DriverManager.getConnection(URL, USER, PASSWORD);
// 创建 SQL 语句
String sql = "UPDATE Student SET name = ?, age = ? WHERE id = ?";
// 创建 PreparedStatement 对象
PreparedStatement ps = conn.prepareStatement(sql);
// 设置参数
ps.setString(1, name);
ps.setInt(2, age);
ps.setInt(3, id);
// 执行 SQL 语句
int result = ps.executeUpdate();
if (result > 0) {
System.out.println("数据修改成功!");
} else {
System.out.println("数据修改失败!");
}
// 关闭 PreparedStatement 对象和连接
ps.close();
conn.close();
} catch (ClassNotFoundException | SQLException e) {
e.printStackTrace();
}
}
// 查询数据
public static void select() {
try {
// 加载 MySQL 驱动
Class.forName("com.mysql.jdbc.Driver");
// 建立连接
Connection conn = DriverManager.getConnection(URL, USER, PASSWORD);
// 创建 SQL 语句
String sql = "SELECT * FROM Student";
// 创建 Statement 对象
Statement stmt = conn.createStatement();
// 执行 SQL 语句
ResultSet rs = stmt.executeQuery(sql);
// 输出结果
while (rs.next()) {
int id = rs.getInt("id");
String name = rs.getString("name");
int age = rs.getInt("age");
System.out.println("id: " + id + ", name: " + name + ", age: " + age);
}
// 关闭 ResultSet、Statement 对象和连接
rs.close();
stmt.close();
conn.close();
} catch (ClassNotFoundException | SQLException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
// 增加数据
insert("张三", 20);
// 查询数据
select();
// 修改数据
update(1, "李四", 21);
// 查询数据
select();
// 删除数据
delete(1);
// 查询数据
select();
}
}
```
以上代码实现了向 `Student` 表中增加一条数据、查询全部数据、修改数据、删除数据,并输出查询结果。注意,需要先将 `mysql-connector-java` 的 JAR 包添加到项目中。