QString studentId = ui->id->text().trimmed();
if (studentId.isEmpty()) {
QMessageBox::warning(this, "输入错误", "请输入学号");
return;
}
// 检查数据库连接
if (!db.isValid() || !db.isOpen()) {
QMessageBox::critical(this, "数据库错误",
db.lastError().text().isEmpty() ?
"数据库未连接" : db.lastError().text());
return;
}
QSqlQuery query(db);
query.prepare("SELECT id as '学号',name as '姓名',chinese as '语文',math as '数学',english as '英语' "
"FROM chengji WHERE id = :id");
query.bindValue(":id", studentId);
if (!query.exec()) {
QMessageBox::critical(this, "查询错误", query.lastError().text());
return;
}
// 使用临时模型显示结果
QSqlQueryModel *model = new QSqlQueryModel(ui->win);
model->setQuery(query);
ui->win->setModel(model);
ui->win->horizontalHeader()->setSectionResizeMode(QHeaderView::Stretch);
if (studentId.isEmpty()) {
QMessageBox::warning(this, "输入错误", "请输入学号");
return;
}
// 检查数据库连接
if (!db.isValid() || !db.isOpen()) {
QMessageBox::critical(this, "数据库错误",
db.lastError().text().isEmpty() ?
"数据库未连接" : db.lastError().text());
return;
}
QSqlQuery query(db);
query.prepare("SELECT id as '学号',name as '姓名',chinese as '语文',math as '数学',english as '英语' "
"FROM chengji WHERE id = :id");
query.bindValue(":id", studentId);
if (!query.exec()) {
QMessageBox::critical(this, "查询错误", query.lastError().text());
return;
}
// 使用临时模型显示结果
QSqlQueryModel *model = new QSqlQueryModel(ui->win);
model->setQuery(query);
ui->win->setModel(model);
ui->win->horizontalHeader()->setSectionResizeMode(QHeaderView::Stretch);