pyqt5中,数据库查询结果,用表格来展示数据
时间: 2023-12-16 09:06:42 浏览: 265
数据库数据用图表显示
5星 · 资源好评率100%
可以使用QTableWidget来展示数据库查询结果。具体步骤如下:
1. 在QtDesigner中创建一个QTableWidget控件,并设置好列数和表头。
2. 在代码中连接数据库,执行SQL查询语句并获取查询结果。
3. 遍历查询结果,将每行数据添加到QTableWidget中。
示例代码如下:
```
from PyQt5.QtWidgets import QApplication, QMainWindow, QTableWidgetItem
import pymysql
class MainWindow(QMainWindow):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
# 创建QTableWidget
self.table = QTableWidget()
self.table.setColumnCount(3)
self.table.setHorizontalHeaderLabels(['ID', 'Name', 'Age'])
self.setCentralWidget(self.table)
# 连接数据库
conn = pymysql.connect(host='localhost', user='root', password='123456', db='test', charset='utf8')
cursor = conn.cursor()
# 执行查询语句
sql = 'SELECT * FROM student'
cursor.execute(sql)
result = cursor.fetchall()
# 将查询结果添加到QTableWidget中
for i, row in enumerate(result):
self.table.insertRow(i)
for j, col in enumerate(row):
item = QTableWidgetItem(str(col))
self.table.setItem(i, j, item)
# 关闭数据库连接
cursor.close()
conn.close()
if __name__ == '__main__':
app = QApplication([])
window = MainWindow()
window.show()
app.exec_()
```
这个例子中,我们创建了一个3列的表格,并从MySQL数据库中查询了一些数据,将数据展示到这个表格中。你可以根据自己的需要修改列数和查询语句。
阅读全文