android studio中根据学号查询信息并删除
时间: 2023-09-15 21:21:54 浏览: 69
您需要提供更多的上下文信息,例如要查询的数据存储在哪里(例如SQLite数据库、云数据库等),数据的结构是什么样子的,以及删除数据的逻辑是什么样子的。根据这些信息,您可以编写相应的代码来实现您的需求。以下是一个示例,假设数据存储在SQLite数据库中:
```java
//根据学号删除数据
public boolean deleteData(String studentID) {
SQLiteDatabase db = this.getWritableDatabase();
return db.delete("students", "student_id=?", new String[]{studentID}) > 0;
}
//根据学号查询数据
public Cursor getData(String studentID) {
SQLiteDatabase db = this.getWritableDatabase();
String query = "SELECT * FROM students WHERE student_id=?";
return db.rawQuery(query, new String[]{studentID});
}
```
在这个示例中,我们假设有一个名为“students”的表,其中包含学生信息,其中“student_id”是唯一的学号。我们可以使用上面的两个方法中的任何一个来实现我们的需求。例如,要删除具有特定学号的学生信息,您可以使用`deleteData()`方法,如下所示:
```java
String studentID = "12345";
if (deleteData(studentID)) {
Toast.makeText(this, "成功删除学号为" + studentID + "的学生信息", Toast.LENGTH_SHORT).show();
} else {
Toast.makeText(this, "删除学生信息失败", Toast.LENGTH_SHORT).show();
}
```
同样,要根据学号查询学生信息,您可以使用`getData()`方法,如下所示:
```java
String studentID = "12345";
Cursor res = getData(studentID);
if (res.getCount() == 0) {
Toast.makeText(this, "没有找到学号为" + studentID + "的学生信息", Toast.LENGTH_SHORT).show();
} else {
StringBuffer buffer = new StringBuffer();
while (res.moveToNext()) {
buffer.append("ID: " + res.getString(0) + "\n");
buffer.append("Name: " + res.getString(1) + "\n");
buffer.append("Student ID: " + res.getString(2) + "\n");
buffer.append("Department: " + res.getString(3) + "\n");
}
Toast.makeText(this, buffer.toString(), Toast.LENGTH_SHORT).show();
}
```
在这个示例中,我们首先检查是否找到了学生信息(如果没有,则显示一条消息),然后使用`StringBuffer`构建一个包含所有返回信息的字符串,并显示在屏幕上。