一个PreparedStatement对象怎么执行不一样的sql
时间: 2024-03-12 08:48:56 浏览: 59
如何获得PreparedStatement最终执行的sql语句
一个PreparedStatement对象可以执行不同的SQL语句,只需要在创建PreparedStatement对象时,传入不同的SQL语句即可。具体步骤如下:
1. 创建Connection对象,连接到数据库。
2. 使用Connection对象的prepareStatement方法创建一个PreparedStatement对象,该对象表示预编译的SQL语句。
3. 设置PreparedStatement对象中占位符对应的参数值。
4. 执行SQL语句,使用PreparedStatement对象的execute、executeQuery或executeUpdate方法,根据SQL语句的类型选择相应的方法。
5. 重复步骤2-4,使用不同的SQL语句,执行不同的操作。
以下是一个示例代码:
```
// 创建Connection对象
Connection conn = DriverManager.getConnection(url, username, password);
// 创建PreparedStatement对象,并执行第一个SQL语句
PreparedStatement pstmt = conn.prepareStatement("SELECT * FROM users WHERE name = ?");
pstmt.setString(1, "Tom");
ResultSet rs = pstmt.executeQuery();
// 执行第二个SQL语句
pstmt = conn.prepareStatement("INSERT INTO users(name, age) VALUES(?, ?)");
pstmt.setString(1, "Jerry");
pstmt.setInt(2, 20);
int rows = pstmt.executeUpdate();
// 关闭资源
rs.close();
pstmt.close();
conn.close();
```
在上面的代码中,首先创建了一个Connection对象,然后使用该Connection对象的prepareStatement方法创建了一个PreparedStatement对象,并执行了第一个SQL语句。接下来,使用同一个PreparedStatement对象,执行了第二个SQL语句。最后,关闭了ResultSet、PreparedStatement和Connection对象。
阅读全文