某中学排课管理系统数据库利用循环语句插入大量数据进行检索测试的相关代码
时间: 2024-03-01 20:54:23 浏览: 19
以下是一个简单的Java代码示例,演示如何使用循环语句插入大量数据到数据库中,并进行检索测试。假设我们有一个名为“Student”的表,包含“id”、“name”和“age”三个字段。
```java
import java.sql.*;
public class TestDB {
private static final String URL = "jdbc:mysql://localhost:3306/testdb?useUnicode=true&characterEncoding=utf-8&useSSL=false";
private static final String USERNAME = "root";
private static final String PASSWORD = "password";
private static final int COUNT = 10000; // 需要插入的数据量
public static void main(String[] args) {
Connection conn = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
try {
// 连接数据库
conn = DriverManager.getConnection(URL, USERNAME, PASSWORD);
// 插入数据
String sql = "INSERT INTO student(name, age) VALUES (?, ?)";
pstmt = conn.prepareStatement(sql);
for (int i = 0; i < COUNT; i++) {
pstmt.setString(1, "Student" + i);
pstmt.setInt(2, 18);
pstmt.executeUpdate();
}
// 查询数据
sql = "SELECT * FROM student WHERE age = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setInt(1, 18);
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);
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
// 释放资源
try {
if (rs != null) rs.close();
if (pstmt != null) pstmt.close();
if (conn != null) conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
```
在上面的代码中,我们使用循环语句插入了10000条数据到数据库中,并使用PreparedStatement对象进行参数化查询,检索出年龄为18的所有学生信息并输出。当然,在实际应用中,您可能需要根据具体的需求对代码进行修改和优化。