javawebSQL数据库添加数据,查询数据,修改数据,删除数据,批处理等
时间: 2023-09-25 11:11:59 浏览: 67
JavaWeb中使用SQL数据库进行数据操作可以使用JDBC(Java Database Connectivity)技术,以下是一些常用的操作示例:
1. 添加数据
```java
// 加载数据库驱动
Class.forName("com.mysql.jdbc.Driver");
// 获取数据库连接
Connection conn = DriverManager.getConnection(url, user, password);
// 创建SQL语句
String sql = "INSERT INTO student (name, age) VALUES (?, ?)";
// 创建PreparedStatement对象
PreparedStatement pstmt = conn.prepareStatement(sql);
// 设置参数
pstmt.setString(1, "张三");
pstmt.setInt(2, 18);
// 执行SQL语句
pstmt.executeUpdate();
// 关闭资源
pstmt.close();
conn.close();
```
2. 查询数据
```java
// 加载数据库驱动
Class.forName("com.mysql.jdbc.Driver");
// 获取数据库连接
Connection conn = DriverManager.getConnection(url, user, password);
// 创建SQL语句
String sql = "SELECT * FROM student WHERE age > ?";
// 创建PreparedStatement对象
PreparedStatement pstmt = conn.prepareStatement(sql);
// 设置参数
pstmt.setInt(1, 18);
// 执行查询
ResultSet rs = pstmt.executeQuery();
// 遍历结果集
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);
}
// 关闭资源
rs.close();
pstmt.close();
conn.close();
```
3. 修改数据
```java
// 加载数据库驱动
Class.forName("com.mysql.jdbc.Driver");
// 获取数据库连接
Connection conn = DriverManager.getConnection(url, user, password);
// 创建SQL语句
String sql = "UPDATE student SET age = ? WHERE name = ?";
// 创建PreparedStatement对象
PreparedStatement pstmt = conn.prepareStatement(sql);
// 设置参数
pstmt.setInt(1, 20);
pstmt.setString(2, "张三");
// 执行修改
pstmt.executeUpdate();
// 关闭资源
pstmt.close();
conn.close();
```
4. 删除数据
```java
// 加载数据库驱动
Class.forName("com.mysql.jdbc.Driver");
// 获取数据库连接
Connection conn = DriverManager.getConnection(url, user, password);
// 创建SQL语句
String sql = "DELETE FROM student WHERE name = ?";
// 创建PreparedStatement对象
PreparedStatement pstmt = conn.prepareStatement(sql);
// 设置参数
pstmt.setString(1, "张三");
// 执行删除
pstmt.executeUpdate();
// 关闭资源
pstmt.close();
conn.close();
```
5. 批处理
```java
// 加载数据库驱动
Class.forName("com.mysql.jdbc.Driver");
// 获取数据库连接
Connection conn = DriverManager.getConnection(url, user, password);
// 关闭自动提交
conn.setAutoCommit(false);
// 创建SQL语句
String sql = "INSERT INTO student (name, age) VALUES (?, ?)";
// 创建PreparedStatement对象
PreparedStatement pstmt = conn.prepareStatement(sql);
// 设置参数
pstmt.setString(1, "张三");
pstmt.setInt(2, 18);
// 添加到批处理中
pstmt.addBatch();
// 设置参数
pstmt.setString(1, "李四");
pstmt.setInt(2, 20);
// 添加到批处理中
pstmt.addBatch();
// 执行批处理
pstmt.executeBatch();
// 提交事务
conn.commit();
// 关闭资源
pstmt.close();
conn.close();
```