📜  准备好的语句更新 - Java (1)

📅  最后修改于: 2023-12-03 15:36:49.364000             🧑  作者: Mango

准备好的语句更新 - Java

在Java编程中,使用准备好的语句是一种非常有效的方式来预编译SQL语句。这些语句已经由数据库连接程序编译并准备好,因此可以大大提高程序的执行效率。本文将介绍如何在Java中使用准备好的语句来执行SQL语句。

步骤
1. 准备数据库连接

在使用准备好的语句之前,需要先建立一个数据库连接。具体实现方法可以参考以下代码:

Class.forName("com.mysql.jdbc.Driver");
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test?serverTimezone=UTC&useSSL=false", "root", "password");
2. 创建PreparedStatement对象

在建立完数据库连接后,需要创建一个PreparedStatement对象,以下代码展示了如何创建一个PreparedStatement对象:

String sql = "INSERT INTO user(name, age) VALUES(?, ?)";
PreparedStatement pstmt = conn.prepareStatement(sql);
3. 设置参数值

在创建PreparedStatement对象之后,可以使用setXXX()方法来设置参数值。这些参数值将用于执行SQL语句中的占位符。以下代码展示了如何设置参数值:

pstmt.setString(1, "张三");
pstmt.setInt(2, 20);
4. 执行SQL语句

执行SQL语句时,可以调用PreparedStatement对象的execute()或executeUpdate()方法。以下代码展示了如何执行SQL语句:

pstmt.executeUpdate();
示例代码

下面的示例代码展示了如何使用准备好的语句向MySQL数据库中插入一条记录:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;

public class PreparedStmtDemo {
    public static void main(String[] args) throws Exception {
        Class.forName("com.mysql.jdbc.Driver");
        Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test?serverTimezone=UTC&useSSL=false", "root", "password");
        String sql = "INSERT INTO user(name, age) VALUES(?, ?)";
        PreparedStatement pstmt = conn.prepareStatement(sql);
        pstmt.setString(1, "张三");
        pstmt.setInt(2, 20);
        pstmt.executeUpdate();
        pstmt.close();
        conn.close();
    }
}
参考资料