jdbc从键盘输入查询学生表中特定学生
时间: 2023-07-07 09:17:17 浏览: 125
好的,你可以使用 JDBC 中的 PreparedStatement 预编译 SQL 语句,并且使用 Java 标准输入流 System.in 来从键盘读取用户输入的特定学生的 ID,最终查询出符合条件的学生的信息。
以下是一个示例代码:
```java
import java.sql.*;
public class QueryStudent {
public static void main(String[] args) {
String url = "jdbc:mysql://localhost:3306/test";
String user = "root";
String password = "your_password"; // 替换为你的数据库密码
String sql = "SELECT * FROM students WHERE student_id = ?";
try (Connection conn = DriverManager.getConnection(url, user, password);
PreparedStatement pstmt = conn.prepareStatement(sql);
Scanner scanner = new Scanner(System.in)) {
System.out.println("请输入要查询学生的 ID:");
String studentId = scanner.nextLine();
pstmt.setString(1, studentId);
ResultSet rs = pstmt.executeQuery();
if (rs.next()) {
System.out.println("学生姓名:" + rs.getString("name"));
System.out.println("学生年龄:" + rs.getInt("age"));
// 可以根据需要输出其他字段
} else {
System.out.println("没有找到符合条件的学生。");
}
} catch (SQLException e) {
e.printStackTrace();
}
}
}
```
这个示例代码中,我们先定义了连接数据库的 URL、用户名和密码,并且定义了要查询的 SQL 语句。然后,我们使用 `PreparedStatement` 预编译 SQL 语句,并使用占位符 `?` 指代要查询的学生的 ID。接着,我们使用标准输入流 `System.in` 从键盘读取用户输入的特定学生的 ID,并将其作为参数传递给 `pstmt.setString(1, studentId)`。最后,我们执行 SQL 查询语句,并输出符合条件的学生的信息。
阅读全文