# 删除学生信息 query = QSqlQuery() query.prepare('DELETE FROM student WHERE id = ?') for index in selected: query.addBindValue(index.siblingAtColumn(0).data()) if not query.exec_(): print(query.lastError().text()) QMessageBox.warning(self, '警告', '删除学生失败') return # 刷新表格视图 self.model.select() def query_student(self): # 获取查询条件 department = self.departmentLineEdit.text() student_id = self.studentIdLineEdit.text() # 构造查询语句 query_str = 'SELECT * FROM student' if department: query_str += ' WHERE department = "{}"'.format(department) if student_id: query_str += ' AND student_id = "{}"'.format(student_id) elif student_id: query_str += ' WHERE student_id = "{}"'.format(student_id) # 执行查询 query = QSqlQuery(query_str) if not query.exec_(): print(query.lastError().text()) QMessageBox.warning(self, '警告', '查询学生失败') return # 显示查询结果 query_model = QSqlTableModel() query_model.setQuery(query) self.tableView.setModel(query_model) if __name__ == '__main__': app = QApplication(sys.argv) window = MainWindow() window.show() sys.exit(app.exec_())
时间: 2024-04-02 20:33:44 浏览: 44
使用Qt+SQLite搭建学生管理系统,功能包括学生信息的增删改查.zip
5星 · 资源好评率100%
这段代码是学生信息管理中的查询和删除功能。其中,删除学生信息部分是通过SQL语句删除数据库中对应的学生信息,如果删除失败则会弹出警告框,最后刷新表格视图。查询学生信息部分是获取查询条件,构造查询语句,执行查询并显示查询结果。查询语句部分根据输入的查询条件动态构造查询语句,如果查询失败则会弹出警告框。最后将查询结果显示在表格视图中。最后,如果该文件作为程序的入口,则创建QApplication对象并展示主窗口。
阅读全文