pyqt oracle 表格
时间: 2023-10-17 16:11:03 浏览: 83
要在PyQt中使用Oracle表格,您需要使用Oracle的Python驱动程序cx_Oracle和PyQt的QTableView类。
以下是一个简单的示例代码,它连接到Oracle数据库,执行查询并将结果显示在表格中:
```python
import sys
from PyQt5.QtWidgets import QApplication, QTableView
from PyQt5.QtSql import QSqlDatabase, QSqlQuery, QSqlTableModel
import cx_Oracle
# Connect to Oracle database
connection = cx_Oracle.connect("username/password@hostname:port/service_name")
# Create QSqlDatabase object
db = QSqlDatabase.addDatabase("QOCI")
db.setHostName("hostname")
db.setPort(port)
db.setDatabaseName("service_name")
db.setUserName("username")
db.setPassword("password")
db.open()
# Create QSqlTableModel object
model = QSqlTableModel()
model.setTable("table_name")
model.setEditStrategy(QSqlTableModel.OnManualSubmit)
# Execute query
query = QSqlQuery(db)
query.exec_("SELECT * FROM table_name")
# Set model query
model.setQuery(query)
# Create QTableView object
view = QTableView()
view.setModel(model)
view.show()
# Execute application
app = QApplication(sys.argv)
sys.exit(app.exec_())
```
请注意,您需要将查询结果设置为QSqlTableModel的查询,然后将其设置为QTableView的模型,以便将结果显示在表格中。在此示例中,我们使用“OnManualSubmit”编辑策略,因此更改将在用户提交更改后才会保存到数据库中。
阅读全文