要实现Java对数据库的增删改查,首先需要使用JDBC(Java Database Connectivity)库。以下是一个简单的示例,展示了如何使用JDBC实现对数据库的增删改查操作:
- 导入JDBC库:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
- 加载数据库驱动:
static {
try {
Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
- 建立数据库连接:
String url = "jdbc:mysql://localhost:3306/数据库名?useSSL=false&serverTimezone=UTC";
String user = "用户名";
String password = "密码";
Connection connection = null;
try {
connection = DriverManager.getConnection(url, user, password);
} catch (SQLException e) {
e.printStackTrace();
}
- 实现增删改查操作:
- 插入数据:
String insertSql = "INSERT INTO 表名 (列1, 列2, 列3) VALUES (?, ?, ?)";
try {
PreparedStatement preparedStatement = connection.prepareStatement(insertSql);
preparedStatement.setString(1, "值1");
preparedStatement.setString(2, "值2");
preparedStatement.setString(3, "值3");
int rowsAffected = preparedStatement.executeUpdate();
System.out.println("插入成功,影响了" + rowsAffected + "行。");
} catch (SQLException e) {
e.printStackTrace();
}
- 删除数据:
String deleteSql = "DELETE FROM 表名 WHERE 条件";
try {
PreparedStatement preparedStatement = connection.prepareStatement(deleteSql);
int rowsAffected = preparedStatement.executeUpdate();
System.out.println("删除成功,影响了" + rowsAffected + "行。");
} catch (SQLException e) {
e.printStackTrace();
}
- 更新数据:
String updateSql = "UPDATE 表名 SET 列1 = ?, 列2 = ? WHERE 条件";
try {
PreparedStatement preparedStatement = connection.prepareStatement(updateSql);
preparedStatement.setString(1, "新值1");
preparedStatement.setString(2, "新值2");
int rowsAffected = preparedStatement.executeUpdate();
System.out.println("更新成功,影响了" + rowsAffected + "行。");
} catch (SQLException e) {
e.printStackTrace();
}
- 查询数据:
String querySql = "SELECT * FROM 表名 WHERE 条件";
try {
PreparedStatement preparedStatement = connection.prepareStatement(querySql);
ResultSet resultSet = preparedStatement.executeQuery();
while (resultSet.next()) {
String column1 = resultSet.getString("列1");
String column2 = resultSet.getString("列2");
String column3 = resultSet.getString("列3");
System.out.println("列1:" + column1 + ",列2:" + column2 + ",列3:" + column3);
}
} catch (SQLException e) {
e.printStackTrace();
}
- 关闭数据库连接:
if (connection != null) {
try {
connection.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
注意:请将上述代码中的数据库名
、用户名
、密码
、表名
、列1
、列2
、列3
等替换为实际的值。