PySide6展示mysql数据库表格
时间: 2025-05-02 20:47:55 浏览: 22
### 使用 PySide6 展示 MySQL 数据库中的表格数据
要在 PySide6 中展示 MySQL 数据库中的表格数据,可以通过 `QtSql` 模块来完成数据库连接和查询操作。以下是具体方法:
#### 导入必要的模块
为了实现这一功能,需要导入 `PySide6.QtSql` 和其他相关模块。
```python
import sys
from PySide6.QtWidgets import QApplication, QMainWindow, QTableView
from PySide6.QtSql import QSqlDatabase, QSqlTableModel
```
#### 创建与 MySQL 数据库的连接
通过 `QSqlDatabase.addDatabase()` 方法创建并配置数据库连接对象。
```python
def create_connection():
db = QSqlDatabase.addDatabase("QMYSQL") # 使用 QMYSQL 驱动程序
db.setHostName("localhost") # 设置主机名为本地服务器
db.setUserName("root") # 设置用户名为 root
db.setPassword("") # 如果有密码,请设置对应的值
db.setDatabaseName("test_db") # 替换为实际使用的数据库名称
if not db.open(): # 尝试打开数据库连接
print(f"无法建立数据库连接: {db.lastError().text()}")[^1]
return False
return True
```
#### 构建主窗口界面
利用 `QMainWindow` 和 `QTableView` 来构建应用程序的主要界面,并加载模型数据到视图中。
```python
class MainWindow(QMainWindow):
def __init__(self):
super().__init__()
self.table_view = QTableView() # 初始化 QTableView 控件
model = QSqlTableModel(self) # 创建一个 SQL 表格模型
model.setTable("students") # 设定要显示的数据表名(替换为您的表)
model.select() # 加载数据
self.table_view.setModel(model) # 绑定模型至视图控件
self.setCentralWidget(self.table_view) # 设置为主窗体中心部件
```
#### 主函数入口
最后定义应用启动逻辑,确保只有当成功建立了数据库链接之后才继续执行后续流程。
```python
if __name__ == "__main__":
app = QApplication(sys.argv)
if not create_connection(): # 判断是否能够正常开启数据库会话
sys.exit(-1)
window = MainWindow()
window.resize(800, 600)
window.show()
sys.exit(app.exec())
```
以上代码展示了如何使用 PySide6 结合 MySQL 显示数据库内的表格资料。需要注意的是,这里假设您已经安装好了相应的驱动支持以及正确设置了访问权限等内容[^2]。
---
阅读全文
相关推荐



















