有java编写一个程序,实现对数据库studentInfo中的表student进行插入操作。要求使用预处理语句对象PreparedStatament完成以下数据的插入
时间: 2024-01-21 09:18:14 浏览: 25
好的,以下是一个简单的示例代码,可以实现对数据库studentInfo中的表student进行插入操作:
```java
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
public class InsertStudent {
public static void main(String[] args) {
// 数据库连接信息
String url = "jdbc:mysql://localhost:3306/studentInfo";
String username = "root";
String password = "123456";
// 要插入的数据
String name = "张三";
int age = 20;
String gender = "男";
try {
// 加载数据库驱动
Class.forName("com.mysql.jdbc.Driver");
// 建立数据库连接
Connection conn = DriverManager.getConnection(url, username, password);
// SQL语句,使用占位符(?)表示参数
String sql = "INSERT INTO student(name, age, gender) VALUES (?, ?, ?)";
// 创建预处理语句对象
PreparedStatement pstmt = conn.prepareStatement(sql);
// 设置参数值
pstmt.setString(1, name);
pstmt.setInt(2, age);
pstmt.setString(3, gender);
// 执行插入操作
int rows = pstmt.executeUpdate();
if (rows > 0) {
System.out.println("插入成功!");
} else {
System.out.println("插入失败!");
}
// 关闭预处理语句对象和数据库连接
pstmt.close();
conn.close();
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
```
需要注意的是,示例代码中的数据库连接信息、要插入的数据、SQL语句和占位符都需要根据具体情况进行修改。此外,由于使用了预处理语句对象,可以有效避免SQL注入攻击。