pyqt tableview mysql_PyQt5 QTableView使用pymysql连接数据库的方法
时间: 2024-03-05 07:49:02 浏览: 29
下面是使用PyQt5和PyMySQL连接MySQL数据库并在QTableView中显示数据的示例代码:
```python
import pymysql
from PyQt5.QtWidgets import QApplication, QMainWindow, QTableView
from PyQt5.QtSql import QSqlDatabase, QSqlQuery, QSqlTableModel
import sys
class MainWindow(QMainWindow):
def __init__(self):
super().__init__()
# 连接MySQL数据库
self.db = QSqlDatabase.addDatabase('QMYSQL')
self.db.setHostName('localhost') # MySQL服务器地址
self.db.setUserName('root') # 用户名
self.db.setPassword('password') # 密码
self.db.setDatabaseName('testdb') # 数据库名
if not self.db.open():
print('无法连接数据库')
sys.exit(1)
# 查询数据
query = QSqlQuery()
query.exec_("SELECT * FROM table_name")
# 创建数据模型
model = QSqlTableModel()
model.setQuery(query)
# 创建表格视图
table_view = QTableView()
table_view.setModel(model)
self.setCentralWidget(table_view)
self.setWindowTitle('MySQL Table')
self.show()
if __name__ == '__main__':
app = QApplication(sys.argv)
window = MainWindow()
sys.exit(app.exec_())
```
其中,需要将`localhost`替换为你的MySQL服务器地址,`root`替换为你的用户名,`password`替换为你的密码,`testdb`替换为你的数据库名,`table_name`替换为你要查询的表名。