【发布时间】:2018-07-30 19:45:48
【问题描述】:
我正在使用 Pyqt 设计一个程序,用于将数据存储到 sqlite 数据库并使用 QTableView 检索它。显然,我想检索一个特定的列,如“name”并显示所有名为“Anderson”的行。以下代码失败,因为它错过了很多。
database = QtSql.QSqlDatabase().addDatabase('QSQLITE')
database.setDatabaseName('database.db')
database.open()
model = QtSql.QSqlTableModel()
#model.setQuery("SELECT Name, Sale, Date FROM Individuals")
model.setEditStrategy(QtSql.QSqlTableModel.OnManualSubmit)
model.select()
self.tableView.setModel(model)
self.tableView.setShowGrid(False)
model.setHeaderData(0, QtCore.Qt.Horizontal, "Name")
model.setHeaderData(1, QtCore.Qt.Horizontal, "Amount")
model.setHeaderData(2, QtCore.Qt.Horizontal, "Date")
self.tableView.horizontalHeader().setVisible(True)
print(model.setFilter("SELECT Name = 'Anderson' FROM Individuals"))
【问题讨论】:
标签: python python-3.x pyqt pyqt5 qtableview