编写程序,实现对数据库StudentInfo中的表student进行插入操作。要求使用预处理语句对象 PreparedStatement完成以下数据的插入: insert into student values('001','张三',18,'女') 注:给定数据库登录用户名:sa,密码:123
时间: 2023-11-30 16:02:00 浏览: 116
用JDBC向Students表中插入数据
以下是一个 Java 程序的示例,可以实现对数据库StudentInfo中的表student进行插入操作:
```java
import java.sql.*;
public class InsertStudent {
public static void main(String[] args) {
String url = "jdbc:sqlserver://localhost:1433;DatabaseName=StudentInfo"; // 数据库连接字符串
String user = "sa"; // 数据库登录用户名
String password = "123"; // 数据库登录密码
try (Connection conn = DriverManager.getConnection(url, user, password)) {
String sql = "insert into student values(?, ?, ?, ?)";
PreparedStatement stmt = conn.prepareStatement(sql); // 创建预处理语句对象
stmt.setString(1, "001"); // 设置第一个参数的值
stmt.setString(2, "张三"); // 设置第二个参数的值
stmt.setInt(3, 18); // 设置第三个参数的值
stmt.setString(4, "女"); // 设置第四个参数的值
int rowsAffected = stmt.executeUpdate(); // 执行预处理语句
System.out.println(rowsAffected + " 行记录已插入到表student中。");
stmt.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
```
说明:
1. 首先定义了数据库连接字符串、用户名和密码。
2. 在 try-with-resources 语句块中创建数据库连接并获取 PreparedStatement 对象。
3. 使用 setXXX() 方法设置预处理语句中的参数。
4. 使用 executeUpdate() 方法执行预处理语句并返回结果。
5. 关闭 PreparedStatement 对象。
需要注意的是,本示例中的 SQL 语句使用了占位符(?)来表示参数,这是为了防止 SQL 注入攻击。在执行预处理语句时,需要使用 setXXX() 方法为每个参数设置值。这种方式比直接拼接 SQL 语句更安全、更有效。
阅读全文